java 基本类型内存_java基本数据类型、内存分析、装包拆包
2019-09-13 ? 18:01:23
idea快捷鍵:
file->settings->Keymap->搜索關鍵字
Increase Font Size ? 增大字體 ?? ctrl+滾輪上
Decrease Font Size? 縮小字體 ? ctrl+滾輪下
基本的命名規范:駝峰式的命名方式
* 類名:每一個單詞的首字母都大寫 ? ? class GoodMan
* 函數名字:首單詞全小寫,后面的每個單詞首字母大寫 ? eatFood( )
* 成員變量:同函數名字
Java的類型
1.簡單類型及占用字節數
*? 整數類型?? byte(1) ? short(2) ? ? int(4) ?? long(8)
*? 字符類型?? char(2) ?? 'a' ? 97 ?? 'b' ? unicode字符集
*? 浮點類型?? float(4) ? ? double(8)
*? 布爾類型?? boolean? true? false
類型之間的轉換關系:
char
↓
byte,short?→ int?→ long
↑ ? ? ? ? ?↑
float→ double
占用字節數小的數據類型可以自動轉換為占用字節數大的數據類型
相加測試實例:
2.引用類型:? 數組、枚舉、類、注解
基本類型對應的包裝類型:
*? byte => Byte
*? short => Short
*? int => Integer
*? long => Long
*? float => Float
*? double => Double
*? char => Character
*? boolean => Boolean
簡單類型與引用類型:
簡單內存分析:
JDK => bin目錄常見命令
* javac.exe: 編譯java源代碼的,生成java字節碼文件(*.class)
* java.exe: ? 啟動一個JVM,來運行指定的class字節碼文件
* javap.exe: javap -c JavaType.class ? ? ? ? 反匯編java字節碼 =》 java代碼
關于如下代碼的理解:
底層處理:調用了Integer的valueOf方法:
valueOf源碼:-128-127之間的數值在常量池中
整個代碼內存分析:
?問:棧內存何時創建和回收?定義該變量的時候被創建,出了函數的右括號,內存就被回收
堆內存何時創建和回收?new后就在堆里創建了該對象的內存地址,靠垃圾回收機制GC來回收
?筆試題:如下4個語句,輸出結果為false的是()
Integer i01=3;
int i02=3;
Integer i03=new Integer(3);
Integer i04=new Integer(3);
A System.out.println(i01==i02) ?? //拆包true
B System.out.println(i01==i03) ? //new了一個新對象false
C?System.out.println(i03==i04) ? //不同的對象
D?System.out.println(i02==i04) ? //拆包true
該題相關知識:
1.關于裝包與拆包:
2.底層處理:
3.實現:
總結裝包拆包:
總結
以上是生活随笔為你收集整理的java 基本类型内存_java基本数据类型、内存分析、装包拆包的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 打印日志log_java如何L
- 下一篇: java创建主键自增表_oracle创建