① java中什么类型存储大量数据
BLOB (binary large object),二进制大对象,是一抄个可以存储二进制文件的容器,用于存储图片,视频等。
CLOB(Character Large Object),字符大对象,存储小说、论文等字符串组成的大对象。
java中对应的包为java.sql
mysql数据库中有blob和clob两种类型,直接存就可以。
② 书上为什么说一个java源文件存储一个JAVA类
这句话是不对滴
至少一个源文件是可以写多个类的,(public的最多只能有1个)
除了class,java还有interface,enum,annotation。他们都是和class一个级别
可见一个源文件不是存储一个类,还可以是其他的,并且可以有多个
③ JAVA集合类存储的是一个对象的哪部分
一个对象有属性有方法,new这个对象的时候内存中就存在了这个对象,这个对象在内存中有一个地址方便我们找到他。那么向一个集合中添加这对象的时候其实是添加这个对象在内存中的地址。也就是说我们在遍历集合的时候其实是挨个查看这个集合中的地址。
那么,也就是说,通过这个地址我们就能找到你之前new的那个对象,从而对这个对象进行操作。
所以说,你的问题“存储的是对象的哪一部分”这种说法是完全错误的。
当然,有一种情况是例外,就是你写了一个集合的子类,重新实现了这个集合添加元素的方法,改为了添加某一种类型的某个字段。这时候才可以说这个集合存储的是那个对象的某一个属性。不过这种说法不严谨,因为集合只能存对象类型,就算你放基本数据类型进去JDK1.6以上也会自动帮你包装成对应的对象类型然后存进去。其实存的还是对象。这个对象还是有对应的属性和方法。
所以,总结下来,你的问题那句话在大部分情况下是错误的,在特殊情况下是不严谨的。
④ 在java类中如何实现信息的存储
package com.ctx0331;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* 实现文件的读取和写入
*
* @author Administrator
*
*/
public class FileUtil {
public static void main(String[] args) throws IOException {
byte[] datafile = loadFileData("./tempdata/abc.txt");
System.out.println(new String(datafile));
String str = "写入文件";
String outpath = "./tempdata/out.txt";
saveDataToFile(outpath, str.getBytes());
}
/**
* 读取指定路径的文件内容
*
* @param fileName
* @return data
* @throws IOException
*/
public static byte[] loadFileData(String fileName) throws IOException {
byte[] data = new byte[1024];// 用于存储读取的文件内容
File file = new File(fileName);
if (file.exists()) {
FileInputStream fis = new FileInputStream(file);
fis.read(data);
fis.close();
} else {
System.out.println("文件不存在");
}
return data;
}
/**
* 向指定路径的文件写入data中的内容
*
* @param fileName
* @param data
* @throws IOException
*/
public static void saveDataToFile(String fileName, byte[] data)
throws IOException {
File file = new File(fileName);
if (!file.exists()) {// 文件不存在就创建
file.createNewFile();
}
FileOutputStream fos = new FileOutputStream(file);
fos.write(data);
fos.close();
}
}
⑤ JAVA变量中存储的类型有哪些
当然是大字段BLOB
BLOB是一个二进制大对象,可以容纳可变数量的数据。有4种BLOB类型:TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们只是可容纳值的最大长度不同。
TINYBLOB最大长度为255(2^[8]–1)字节的BLOB列。
BLOB[(M)]最大长度为65,535(2^[16]–1)字节的BLOB列。可以给出该类型的可选长度M。如果给出,则MySQL将列创建为最小的但足以容纳M字节长的值的BLOB类型。
MEDIUMBLOB最大长度为16,777,215(2^[24]–1)字节的BLOB列。
LONGBLOB最大长度为4,294,967,295或4GB(2^[32]–1)字节的BLOB列。LONGBLOB列的最大有效(允许的)长度取决于客户端/服务器协议中配置最大包大小和可用的内存。
如果图片只是些小的简单图片也可以考虑用binary类型字段
根据你图像大小选取适当的类型吧
⑥ JAVA中类中的方法存储在什么地方
类加载时 方法信息保存在一块称为方法区的内存中, 并不随你创建对象而专随对象保存于堆中。可参考属《深入java虚拟机》前几章。
另参考(他人文章):
如果instance method也随着instance增加而增加的话,那内存消耗也太大了,为了做到共用一小段内存,Java 是根据this关键字做到的,比如:instance1.instanceMethod(); instance2.instanceMethod(); 在传递给对象参数的时候,Java 编译器自动先加上了一个this参数,它表示传递的是这个对象引用,虽然他们两个对象共用一个方法,但是他们的方法中所产生的数据是私有的,这是因为参数被传进来变成call stack内的entry,而各个对象都有不同call stack,所以不会混淆。其实调用每个非static方法时,Java 编译器都会自动的先加上当前调用此方法对象的参数,有时候在一个方法调用另一个方法,这时可以不用在前面加上this的,因为要传递的对象参数就是当前执行这个方法的对象。
⑦ JAVA中类中的方法存储在什么地方
类的实例方法在复内存中是只有一份制,不过肯定不会是第一个对象中,如果是第一个对象的话,那么当第一个对象被销毁的时候,那么后面的对象就永远无法调用了...
类的实例方法存在一个专门的区叫方法区,事实上类刚装载的时候就被装载好了,不过它们在"睡眠",只是这些方法必须当有对象产生的时候才会"苏醒".(比如,一个输出类的成员变量的方法,如果连对象都没有,何来的输出成员变量).所以,方法在装载的时候就有了,但是不可用,因为它没有指象任何一个对象。
⑧ java基本类型的存储。
JAVA中基本类型存储的是值本身不是地址,引用类型的存储的才是地址
⑨ java基本数据类型在栈中怎么存放的
1、所有的基本数据类型全部是存储在栈里面,速度快。2、一个对象,它的实体是存储在堆里面的,而它的引用是存储在栈里面。
2
例子:String str = new String("123");这个str就在栈里面,而他的"123"这个对象在堆里面。 str 指向"123";3、就对象本身而言,它的所有属性的值如果不是单例或者静态的,就是存储在堆里面的。一个类的所有对象的属性值都在堆里面 并且占用不同的内存空间,而一个类的方法只在方法区里占一个地方,所有的对象指向同一个方法区。
⑩ java存储数据一定要拿集合和数组存吗
Java有哪些数据存储方式?基本数据类型分别为byte,short,int,long,double,float,char,boolean。String自定义封装类(PO,VO 等实体类)数组,存储一组数据,可以是基本数据类型,也可以是引用数据类型,但只能是同一类型,并且大小一定。集合类,作用与数组类似,也可以存储一组数据。