java編程基礎(一)
Java編程基礎(一)
1. java基本語法
1.1 Java基本格式
修飾符 class 類名 {
程序代碼
}
- Java嚴格區分大小寫,例如不能將class關鍵字寫成Class, java編譯器將不能識別。
- Java程序中連續的字符串不能分行寫;如果想分行寫,可以寫成兩個字符串,中間用+號連接即可。
- 每一語句以分號結尾。
1.2 java註釋
1.2.1 功能:
增加代碼可讀性,方便閱讀,它只在源文件中有效,編譯時編譯器會忽略這些信息,不會將其編譯到class文件中。
1.2.2 分類
註釋分為三種類型:
- 單行註釋
通常用於對某一行代碼進行解釋說明,用符號//表示,後面跟註釋內容,具體事例如下:
int c = 10 //定義一個整數
- 多行註釋,
顧名思義,多行註釋就是註釋中的內容可以有多行,它以符號“/*”開頭,以“*/”結尾,多行註釋不可嵌套。
例如:
/*
int c=10; 既不想刪除代碼,又不想使用,可以使用多行註釋
int x=5;
*/
- 文檔註釋
文檔註釋是一段代碼的註釋說明,可以使用javadoc將文檔註釋提取出來生成幫助文檔,文檔註釋不可嵌套。
格式: Javadoc –d 文檔的存儲路徑 [–version –author] 目標文件
-version 和 –author可選,表示要不要在幫助文檔中添加版本號和作者。
要想使用javadoc生成幫助文檔,類必須要用public修飾
1.2.3 註釋的使用細節:
1. 給那條語句進行說明,註釋應該寫在該語句的旁邊。
2. 單行註釋一般寫在語句的後面多行註釋和文檔註釋一般寫在語句的上面
註意:文檔註釋只能出現在類、屬性、方法的上面。
1.3 關鍵字
關鍵字是編程語言事先定義好並賦予特殊含義的單詞,表示一種數據類型,或程序的結構,也稱作保留字。Java中保留了許多的關鍵字,例如class,public等。
不必花費時間去記憶,用的多了,自然就記住了。
1.4 標識符
在編程過程中,經常需要在程序中定義一些名稱,如包名,類名,接口名等。這些符號稱為標識符。
註意事項:
- 標識符只能由任意順序的大小寫字母,數字,下劃線(_),和美元符號($)組成
- 標識符不能以數字開頭
- 標識符不能是java中的關鍵字
編程習慣:
- 包名所有字母一律小寫,如cn.itcast.test.
- 類名和接口名的每個單詞的首字母要大寫,如ArrayList, Iterator.
- 常量名的所有字母一律大寫,單詞之間用下劃線來連接,如DAY_OF_MONTH
- 變量名和方法名的第一個單詞的首字母小寫,其他單詞首字母大寫,如lineNumber,
- 在程序中,應盡量使用有意義的英文單詞來定義標識符,使程序便於閱讀。如使用userName來標識用戶名,passWord來表示密碼。
1.5 Java中的常量
常量是指在程序運行過程中其值不能改變的量。
常量的分類:
|
- 整型常量
有三種形式,分為十進制,二進制,八進制,十六進制
十進制: 都是以0-9這九個數字組成,不能以0開頭。
二進制: 由0和1兩個數字組成。
八進制: 由0-7數字組成,為了區分與其他進制的數字區別,開頭都是以0開始。
十六進制:由0-9和A-F組成。為了區分於其他數字的區別,開頭都是以ox開始。
進制:一種記數方式,用有限的位數來表示所有的數
在生活中,我們最常接觸到的是十進制,因為人類在計算時自然而然使用十個手指計數
但是在計算機中使用二進制來存儲數據,因為這樣實現起來最簡單,硬件實施方便,由於二進制數據書寫和記憶十分不放便,於是產生了八進制和十六進制,3位二進制相當 於一位8進制,4位二進制表示一位十六進制。
人使用的十進制 、 計算機底層處理的數據是二進制、八進制、十六進制,
2.浮點數常量
浮點數常量就是在數學中用到的小數,分為float單精度浮點數和double雙精度浮點數,單精度浮點數用f或F結尾,雙精度用D或d結尾,若不加後綴默認為double型.
浮點數常量還可以通過指數形式來表示例如:
2e3f 3.6d 0f 3.84d 5.022e+23f
3.字符常量
字符常量表示一個字符,由一對英文半角格式的單引號引起來,他可以是英文字母,數字,標點符號,以及由轉義序列來表示的特殊字符。例如
‘a’ ‘1’ ‘&’ ‘\r’
轉義字符(\):用於轉義後一個字符,來表示特殊的含義。常見的由轉義序列表示的特殊字符有:
\r: 表示回車符,將光標定位到當前行的開頭,不會跳到下一行。
\n:表示換行符,跳到下一行的開頭。
\t: 表示制表符:將光標移到下一個制表位,就像Tab鍵的功能一樣。
\b: 表示退格符,就像鍵盤上的Backspace鍵的功能一樣。
\’: 在字符串中表示一個單引號,去除單引號表示字符的開始結束的功能,若不轉義java編譯器會認為前面兩個是一對,而報錯。
\”: 在字符串中表示一個雙引號,去除雙引號表示字符串的開始結束的功能,若不轉義java編譯器會認為前面兩個是一對,而報錯。
\\: 去除轉義字符的功能,表示字面上的\.
4.字符串
用來表示一串連續的字符,用” “表示字符串的開始與結束。
5.布爾常量
布爾常量只有兩個值true和false,該常量用於區分一個事物的真和假。
6.Null
Null常量只有一個值null,表示對象的引用為空。
1.6 Java中的變量
在程序運行期間會產生一些臨時數據,應用程序會將這些數據保存在一些內存單元中,每個內存單元用標識符來表示,標識符的值就是變量名,內存單元的值就是變量的值。可以說變量就是一個存儲數據的容器,裏面的值可以時常更新。
定義變量的數據類型,其實就是定義內存單元裏大小,不同的數據存儲所需的內存單元也不同。
8種基本數據類型:Java語言中內嵌的,具有相同大小和屬性。
整數類型變量(byte,short,int,long) 浮點數類型變量(float, double) 字符類型變量(char) 布爾類型變量(boolean) |
1.整數類型變量
整數類型變量用來存儲整數類型的值,因為定義一個變量就要調用不同大小的內存空間,為了能合理的分配存儲空間,整數類型分為4種不同的類型,其存儲空間和表示範圍如下:
byte 1個字節 -27 ~ 27-1
short 2個字節 -215 ~ 215-1
int 4個字節 -231 ~ 231-1
long 8個字節 -263 ~ 263-1
如一個int類型的變量要占有4個字節的內存空間,表示的數值可以從-27 ~ 27-1。
賦值時如果一個值超過了int類型所表示的範圍,後面必須加上l或L因為常量默認為int類型,超過了可以表示的範圍,使用會報錯。
2.浮點數類型變量
在Java中浮點數類型有單精度(float)和雙精度(double)之分,double型所表示的浮點數比float更為精確。
當給float類型變量賦值時,小數後面必須加上f或者F,因為浮點型常量默認為double類型變量,大範圍賦給小範圍,會報錯。
3.字符類型變量
用於存儲一個單一字符,在java中用char表示,每個char類型變量占有兩個字節。
也可以將char類型的變量賦值為0~65535範圍內的整數,計算機會自動將整數所對應的字符,如:
char c = ‘a’;
char ch 97;
4.布爾類型
用於存儲布爾值true和false,在內存中占有一個字節。具體事例如下:
boolean flag = false;
flag = true;
1.7 變量的類型轉換
當把一種數據類型的變量的值賦給另一種數據類型的變量時,需要進行數據類型轉換,因為這兩種數據類型在內存空間存儲的格式不同,必須予以轉換。
一.自動類型轉換(隱式轉換)
自動類型轉換必須滿足兩個條件
- 兩種數據類型彼此兼容,
- 目標類型的取值範圍大於源類型的存儲範圍。
例如:
Byte b = 3;
Int x = b;
由於int類型的取值範圍大於byte類型,編譯器在賦值過程中不會造成數據丟失,所有編譯器自動完成了轉換,在編譯時不報告任何錯誤。
二.強制類型轉換
強制類型轉換也叫顯式轉換,指的是當兩種數據類型彼此不兼容,或者目標類型的取值小於源類型時,就需要進行顯式的聲明,進行強制類型轉換。
如: int num = 4;
Byte b = num;
出現了可能損失精度的報告,在這種情況下需要進行強制類型轉換。具體格式如下
Byte b =(byte)num;之後,就不會報錯了。
但強制轉換後,極有可能損失精度,因為byte只能一個字節,int有4個字節,轉換後,int前三個字節存儲的數據都丟失了,只留下最後一個字節的數據。
註意:byte型的變量在運算期間會自動提升為int型,如果還要賦給一個int類型的數據,要進行強制轉換,如:
Byte b1 = 3;
Byte b2 = 4;
Byte b3 = b1 + b2;
會報損失精度的錯,所以要將最後一句改為 byte b3 = (byte) (b1+b2);
1.8 變量的作用域
變量需要先定義後使用,它在哪個大括號內被定義,它就只能在這個大括號範圍內使用,不能超出範圍。
java編程基礎(一)