第二章 基礎知識(1)
1、命名規範
- 包名都小寫 com.companyname.xxxx
- 類名、介面名所有單詞首字母大寫 HelloWorld
- 變數名、方法名駝峰命名法 getData
- 常量名都大寫,多個單詞下劃線分開 FILE_PATH、JAVA_HOME
2、資料型別
2.1 Q&A
1、什麼是值型別、引用型別? 值型別:基本資料型別;引用型別:除了基本資料型別之外的;
2、值型別儲存在棧中,棧中分配記憶體空間,直接儲存所包含的值,其值就代表資料本身。值型別的資料具有較快的存取速度。
3、引用型別儲存在堆中。在堆中分配記憶體空間,不直接儲存所包含的值,而是指向所要儲存的值,其值代表的是所指向的地址。
4、Java中有垃圾回收機制,棧記憶體中的變數隨著方法的結束記憶體自然銷燬了,而用引用型別的時候,當方法結束的時候,這個物件可能被另一個引用型別所應用,不會銷燬,只有當一個物件沒有任何引用變數引用的時候,垃圾回收機制才會回收。
public class Test {
public static void main(String[] args) {
//記憶體劃分為棧記憶體(小)和堆記憶體(大)
// 值型別
int i=10;//儲存在棧記憶體
int m=i;//把值複製給m
i=11;
System.out.println("m="+m+"i="+i);
//引用型別;除了基本資料型別,陣列,String,類
//實際內容存在堆,棧裡只存對應到堆的地址
int[] a= new int[]{1,2,3,4};
int[] b=a;//把對應到堆的地址給了b
a[2]=100;
System.out.println("b[2]="+b[2]);
}
}
5、自動資料型別轉換:容量小轉容量大的型別會自動升級
char、byte、short ==>int ==>long ==>float ==>double
char、byte、short之間的運算都會自動換為int型別
6、從左到右執行
7、前++:先自增再運算;後++:先運算再自增
3、賦值運算子
+=、-=、*=、/=、%=
既可以實現運算,又不更改後設資料的資料型別
int i=10;
i +=10;//此時i=20,相當於 i=i+10;
short s=10;
s +=10;//此時s=20,型別為short,相當於 s=(short)(s+10);
int k=1;
k *=0.1;//k=? k = (int)(k *0.1) = 0
相關文章
- 第二章 基礎知識(2)
- 1、基礎知識
- DDD基礎知識1
- Python基礎知識1Python
- PHP 基礎知識-1PHP
- DS #1 基礎知識
- 1.基礎知識
- 【1】測試基礎知識
- corejava基礎知識(1)-繼承Java繼承
- JS基礎知識總結(1)JS
- Java基礎知識總結-1Java
- 2020-1-31-Typescript基礎知識TypeScript
- 機器學習基礎知識1機器學習
- 基礎知識
- CTF | Web安全 Part1:基礎知識Web
- java基礎語法知識小結(1)Java
- Python 面試必備基礎知識-1Python面試
- Altium Designer 20 入門基礎知識(1)
- 初識ABP vNext(1):開篇計劃&基礎知識
- Envoy基礎知識
- DockerFile基礎知識Docker
- Webpack 基礎知識Web
- js基礎知識JS
- React基礎知識React
- 程式基礎知識
- Docker基礎知識Docker
- qml基礎知識
- Mybatis基礎知識MyBatis
- python基礎知識Python
- Hadoop基礎知識Hadoop
- webpack基礎知識Web
- AI 基礎知識AI
- JSP基礎知識JS
- Dart基礎知識Dart
- RabbitMQ基礎知識MQ
- Android基礎知識Android
- 前端基礎知識前端
- Camera基礎知識