① 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 等實體類)數組,存儲一組數據,可以是基本數據類型,也可以是引用數據類型,但只能是同一類型,並且大小一定。集合類,作用與數組類似,也可以存儲一組數據。