1、Float類型在java中佔4個字節,long類型在java中佔8個字節,爲何float類型的取值範圍比long類型的取值範圍大?java
精度緣由app
2、使用「+」能夠鏈接兩個字符串(String對象),那麼,是怎樣進行鏈接的呢?函數
str += "c";等效於:str = new StringBuffer(str).append("c").toString();
雖然編譯器對字符串加號作了優化,它會用StringBuffer的append方法進行追加。再是經過toString方法轉換成String字符串的。
它與純粹的append方法是不一樣的:
一是每次都要建立一個StringBuilder對象;
二是每次執行完畢都要調用toString方法將其轉換爲字符串。優化
3、構造器是否建立了對象?該怎樣證實這一點?ui
對象建立的幾種方法:
1.使用new關鍵字 2.使用clone方法 3.反射機制 4.反序列化
其中1,3都會明確的顯式的調用構造函數
2是在內存上對已有對象的影印 因此不會調用構造函數
4是從文件中還原類的對象 也不會調用構造函數spa
Java的實例構造器只負責初始化,不負責建立對象;Java虛擬機的字節碼指令的設計也反映了這一點,有一個new指令專門用於建立對象實例,而調用實例構造器則使用invokespecial指令。 設計
4、若是沒有在類中顯示聲明構造器,則編譯器會自動生成一個無參的構造器,那麼編譯器爲何要自動生成一個無參的構造器呢?有什麼做用?對象
一、@RpcClient(timeout = 60000, version = "1.0.0")內存
何時加ci
2、SassHandler 看看這個類