Java 應用程序可以被定義為對象的集合,這些對象通過調用各自的方法來進行通信。下面讓我們具體看一看類,對象,方法,實體變量是什么含義。
對象:對象具有狀態(tài)和行為。例如:狗有它的狀態(tài)—顏色,名字,品種,同時也有行為—搖尾巴,汪汪叫,吃東西。對象時類的一個實例。
類:類可以被定義為描述對象所支持的類型的行為和狀態(tài)的模板或藍圖。
方法:方法是一種基本的行為。類中可以包含很多方法。在方法中,可以編寫邏輯,操縱數據,執(zhí)行動作。
實體變量:每個對象都有它的特殊的實體變量的集合,一個對象的狀態(tài)是由那些實體變量所被賦的值所決定的。
第一個 Java 程序
讓我們看一下下面可以輸出 “Hello World” 的代碼。
1
2
3
4
5
6
7
8
9
10
|
public class MyFirstJavaProgram { /* This is my first java program. * This will print 'Hello World' as the output */ public static void main(String []args) { System.out.println( "Hello World" ); // prints Hello World } } |
讓我們看一下如何保存這個文件,編譯運行這個程序。請按照以下步驟操作:
打開記事本添加上述代碼
以 MyFirstJavaProgram.java 為文件名保存文件
打開命令提示符窗口轉到你保存類的位置。假設是 C:\
在窗口中輸入 javac MyFirstJavaProgram.java 然后按回車來編譯你的代碼。如果你的代碼沒有錯誤,那么命令提示符將會轉到下一行(假設:路徑變量設置成功)。
現在輸入 java MyFirstJavaProgram 來運行你的程序
你將會看到屏幕上顯示 “Hello World”
1
2
|
C : > javac MyFirstJavaProgram.java C : > java MyFirstJavaProgram |
1
|
Hello World |
基本語法
關于 Java 程序,記住一下幾點很重要。
大小寫敏感性: Java 是一種大小寫敏感的語言,這就意味著 Hello 和 hello 在 Java 中代表不同的意思。
類的命名:所有類的名稱首字母必須大寫。
如果類名稱中包含幾個單詞,那么每個單詞的首字母都要大寫。
例如類 MyFirstJavaClass
方法的命名:所有方法名稱必須以小寫字母開頭。
如果方法名稱中包含幾個單詞,那么其中的每個單詞的首字母都要大寫。
例如 public void myMethodName()
程序文件名:程序的文件名必須和類的名稱準確匹配。
但保存文件時,你應當以類的名稱保存(注意區(qū)分大小寫),并在文件名后加 .java 的后綴(如果文件名和類名不匹配那么將無法編譯你的程序)。
例如:假設類名是 MyFirstJavaProgram,那么文件名就應該是 MyFirstJavaProgram.java。
public static void main(String args[]):Java 程序都是從 main() 方法開始處理的,這個方法是 Java 程序的強制性的部分。
Java 標識符
Java 的所有的組成部分都要有自己的名稱。類、變量和方法的名稱稱為標識符。
在 Java 中,需要記住關于標識符的一下幾點。如下:
所有標識符必須以字母( A 到 Z 或者 a 到 z )、貨幣字符( $ )或者下劃線( _ )開頭。
在第一個標識符之后可以有任意字母組合。
關鍵字不能被用作標識符。
大多數標識符需要區(qū)分大小寫。
合法標識符的例子: age, $salary, _value, __1_value
非法標識符的例子: 123abc, -salary
Java 修飾符
如其語言一樣,方法和類等等是可以通過修飾符修飾的。Java 中有兩種修飾符:
訪問修飾符:default, public , protected, private
非訪問修飾符:final, abstract, strictfp
我們將在下一節(jié)繼續(xù)學習修飾符相關知識。
Java 關鍵字
下面列出的是 Java 中保留的關鍵字。這些關鍵字不能用作常量、變量和其他標識符的名字。
關鍵字 | 關鍵字 | 關鍵字 | 關鍵字 |
---|---|---|---|
abstract | assert | boolean | break |
byte | case | catch | char |
class | const | continue | default |
do | double | else | enum |
extends | final | finally | float |
for | goto | if | implements |
import | instanceof | int | interface |
long | native | new | package |
private | protected | public | return |
short | static | strictfp | super |
switch | synchronized | this | throw |
throws | transient | try | void |
volatile | while |
Java 中的注釋
Java 像 C 和 C++ 一樣支持單行或多行注釋。所有注釋中的字母都會被 Java 編譯器忽略。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
public class MyFirstJavaProgram{ /* This is my first java program. * This will print 'Hello World' as the output * This is an example of multi-line comments. */ public static void main(String []args){ // This is an example of single line comment /* This is also an example of single line comment. */ System.out.println( "Hello World" ); } } |
使用空行
一行只有空格的行可能是注釋,這樣的行叫做空行,Java 會完全忽略它。
基本數據類型
變量就是用來儲存值而保留的內存位置。這就意味著當你創(chuàng)建一個變量時就會在內存中占用一定的空間。
基于變量的數據類型,操作系統(tǒng)會進行內存分配并且決定什么將被儲存在保留內存中。因此,通過給變量分配不同的數據類型,你可以在這些變量中存儲整數,小數或者字字母。
Java 中有兩種有效地數據類型:
- 原始數據類型
- 引用數據類型
- 原始數據類型
Java 支持 8 種原始數據類型。原始數據類型是由該語言預先定義的并用關鍵詞命名的。下面讓我們深入學習一下這 8 種數據類型。
字節(jié)型(byte)
字節(jié)型是一種 8 位有正負的二進制整數
- 最小值是 -128(-2^7)
- 最大值是 127(2^7-1)
- 默認值為 0
字節(jié)型數據類型主要是為了在大型數組內節(jié)省空間,主要是替代整數由于字節(jié)型比整數小 4 倍。
例如:byte a = 100 , byte b = -50
短整數(short)
短整數是一種 16 位有正負的二進制整數
- 最小值是 -32768(-2^15)
- 最大值是 32767(2^15-1)
短整數類型的數據也可以像字節(jié)型一樣用于節(jié)省空間。短整數比整數小兩倍
- 默認值為 0
例如:short s = 10000, short r = -20000
整數型(int)
整數型是一種 32 位有正負的二進制整數
- 最小值是 - 2,147,483,648(-2^31)
- 最大值是 2,147,483,647(2^31 -1)
整數型一般默認被應用于整數值除非擔心內存不夠用。
- 默認值為 0
例如:int a = 100000, int b = -200000
長整型(long)
長整型是一種 64 位有正負的二進制整數
- 最小值是 -9,223,372,036,854,775,808(-2^63)
- 最大值是 9,223,372,036,854,775,807 (2^63 -1)
這種數據類型一般是在需要比整數型范圍更大時應用。
- 默認值為 0L
例如:long a = 100000L, int b = -200000L
浮點型(float)
浮點型數據是一種單精度的 32 位 IEEE 754 標準下的浮點數據。
浮點型數據主要是為了在大型浮點數字數組中節(jié)約內存。
- 默認值是 0.0f。
浮點型數據不能用于如貨幣這樣的精確數據。
例如:float f1 = 234.5f
雙精度型(double)
雙精度型數據是一種雙精度的 64 位 IEEE 754 標準下的浮點數據。
這種數據類型主要是默認被用于表示小數的值,一般是默認的選擇。
雙精度型數據不能用于如貨幣這樣的精確數據。
- 默認值是 0.0d
例如:double d1 = 123.4
布爾型(boolean)
布爾型數據代表一個信息比特。
它只有兩個可能的值:真(true)和假(false)
這種數據類型用于真假條件下的簡單標記。
- 默認值是假(false)
例如:boolean one = true
字符型(char)
字符型數據是簡單的 16 位 Unicode 標準下的字符。
- 最小值是: '\u0000' (或 0)。
- 最大值是: '\uffff' (或 65,535 )。
字符型數據可以用來儲存任意字母。
例如: char letter A(字符型的字母A) ='A'
引用數據類型
引用數據類型是由類的編輯器定義的。他們是用于訪問對象的。這些變量被定義為不可更改的特定類型。例如:Employee, Puppy 等等。
- 類對象和數組變量就是這種引用數據類型。
- 任何引用數據類型的默認值都為空。
- 一個引用數據類型可以被用于任何聲明類型和兼容類型的對象。
例如:Animal animal = new Animal("giraffe");
Java 常量
常量是代表固定值的源代碼。他們直接以代碼的形式代表而沒有任何估計。
常量可以被分配給任意的原始變量類型。例如:
1
2
|
byte a = 68 ; char a = 'A' |
字節(jié)型,整數型,長整型和短整型也可以由十進制,十六進制和八進制計數系統(tǒng)表示。
當用這些技術系統(tǒng)表示直接量時,前綴 0 是為了標明八進制,前綴 0x 是為了標明十六進制。例如:
1
2
3
|
int decimal = 100 ; int octal = 0144 ; int hexa = 0x64 ; |
Java 中的字符串型常量的規(guī)定和其他大多數語言一樣,也是要寫在雙引號中間。字符串型直接量的例子如下:
1
2
3
|
"Hello World" "two\nlines" "\"This is in quotes\"" |
字符和字符串型常量可以包含任意的 Unicode 字母。例如:
1
2
|
char a = '\u0001' ; String a = "\u0001" ; |
Java 語言也支持一些特殊的轉義序列的字符和字符串直接量。他們是:
轉義字符 | 含義 |
---|---|
\n | 換行 (0x0a) |
\r | 回車 (0x0d) |
\f | 換頁 (0x0c) |
\b | 退格 (0x08) |
\s | 空格 (0x20) |
\t | tab |
\" | 雙引號 |
\' | 單引號 |
\ | 反斜杠 |
\ddd | 八進制字符 (ddd) |
\uxxxx | 十六進制 UNICODE 字符 (xxxx) |