Java基礎語法
一個Java程式可以認為是一系列物件的集合,而這些物件透過呼叫彼此的方法來協同工作。以下簡單介紹下類別、物件、方法和實例變數的概念。
物件:物件是類別的一個實例,有狀態和行為。例如,一隻狗是一個對象,它的狀態有:顏色、名字、品種;行為有:搖尾巴、叫、吃等。
類別:類別是一個模板,它描述一類物件的行為和狀態。
方法:方法就是行為,一個類別可以有很多方法。邏輯運算、資料修改以及所有動作都是在方法中完成的。
實例變數:每個物件都有獨特的實例變量,物件的狀態由這些實例變數的值決定。
第一個Java程序
下面看一個簡單的Java程序,它將打印字符串 Hello World
public class MyFirstJavaProgram { /* 第一个Java程序. * 它将打印字符串 Hello World */ public static void main(String []args) { System.out.println("Hello World"); // 打印 Hello World } }
下面將逐步介紹如何保存、編譯以及運行這個程序:
打開Notepad,把上面的代碼添加進去;
把檔案名稱儲存為:MyFirstJavaProgram.java;
開啟cmd指令窗口,進入目標檔案所在的位置,假設是C:
在指令列視窗鍵入javac MyFirstJavaProgram.java 按下enter鍵編譯程式碼。如果程式碼沒有錯誤,cmd命令提示字元會進入下一行。 (假設環境變數都設定好了)。
再鍵入java MyFirstJavaProgram 按Enter鍵就可以運行程式了
你將會在視窗看到Hello World
C : > javac MyFirstJavaProgram.java C : > java MyFirstJavaProgram Hello World
基本語法
編寫Java程式時,應注意以下幾點Java是大小寫敏感的,這意味著標識符Hello與hello是不同的。
類別名:對於所有的類別來說,類別名稱的首字母應該要大寫。如果類別名稱由若干單字組成,那麼每個單字的首字母應該大寫,例如 MyFirstJavaClass 。
方法名:所有的方法名稱都應該以小寫字母開頭。如果方法名含有若干單詞,則後面的每個單字首字母大寫。
來源檔案名稱:來源檔案名稱必須和類別名稱相同。當儲存檔案的時候,你應該使用類別名稱作為檔案名稱儲存(切記Java是大小寫敏感的),檔案名稱的後綴為.java。 (如果檔案名稱和類別名稱不相同則會導致編譯錯誤)。
主方法入口:所有的Java 程式由public static void main(String args[])方法開始執行。
Java標識符
Java所有的組成部分都需要名字。類別名稱、變數名以及方法名都被稱為標識符。
關於Java標識符,有以下幾點要注意:
所有的標識符都應該以字母(A-Z或a-z),美元符($)、或者下劃線(_)開始
首字符之後可以是任何字元的組合
關鍵字不能用作標識符
標識符是大小寫敏感的
合法標識符舉例:age、$salary、_value、__1_value
非法識別符舉例:123abc、-salary
5修飾符像其他語言一樣,Java可以使用修飾符來修飾類別中方法和屬性。主要有兩類修飾符:可訪問修飾符 : default, public , protected, private不可訪問修飾符 : final, abstract, strictfp在後面的章節中我們會深入討論Java修飾符。 Java變數Java中主要有下列幾種類型的變數堆群組的對象,可以保存多個同類型變數。在後面的章節中,我們將會學到如何宣告、構造、初始化一個陣列。
Java枚舉
Java 5.0引入了枚舉,枚舉限制變數只能是預先設定好的值。使用枚舉可以減少程式碼中的bug。
例如,我们为果汁店设计一个程序,它将限制果汁为小杯、中杯、大杯。这就意味着它不允许顾客点除了这三种尺寸外的果汁。
实例
class FreshJuice { enum FreshJuiceSize{ SMALL, MEDUIM, LARGE } FreshJuiceSize size; } public class FreshJuiceTest { public static void main(String args[]){ FreshJuice juice = new FreshJuice(); juice.size = FreshJuice. FreshJuiceSize.MEDUIM ; } }
注意:枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。
Java关键字
下面列出了Java保留字。这些保留字不能用于常量、变量、和任何标识符的名称。
关键字
描述
abstract 抽象方法,抽象类的修饰符
assert 断言条件是否满足
boolean 布尔数据类型
break 跳出循环或者label代码段
byte 8-bit 有符号数据类型
case switch语句的一个条件
catch 和try搭配扑捉异常信息
char 16-bit Unicode字符数据类型
class 定义类
const 未使用
continue 不执行循环体剩余部分
default switch语句中的默认分支
do 循环语句,循环体至少会执行一次
double 64-bit双精度浮点数
else if条件不成立时执行的分支
enum 枚举类型
extends 表示一个类是另一个类的子类
final 表示一个值在初始化之后就不能再改变了
表示方法不能被重写,或者一个类不能有子类
finally 为了完成执行的代码而设计的,主要是为了程序的健壮性和完整性,无论有没有异常发生都执行代码。
float 32-bit单精度浮点数
for for循环语句
goto 未使用
if 条件语句
implements 表示一个类实现了接口
import 导入类
instanceof 测试一个对象是否是某个类的实例
int 32位整型数
interface 接口,一种抽象的类型,仅有方法和常量的定义
long 64位整型数
native 表示方法用非java代码实现
new 分配新的类实例
package 一系列相关类组成一个包
private 表示私有字段,或者方法等,只能从类内部访问
protected 表示字段只能通过类或者其子类访问
子类或者在同一个包内的其他类
public 表示共有属性或者方法
return 方法返回值
short 16位数字
static 表示在类级别定义,所有实例共享的
strictfp 浮点数比较使用严格的规则
super 表示基类
switch 选择语句
synchronized 表示同一时间只能由一个线程访问的代码块
this 表示调用当前实例
或者调用另一个构造函数
throw 抛出异常
throws 定义方法可能抛出的异常
transient 修饰不要序列化的字段
try 表示代码块要做异常处理或者和finally配合表示是否抛出异常都执行finally中的代码
void 标记方法不返回任何值
volatile 标记字段可能会被多个线程同时访问,而不做同步
while while循环
Java注释
类似于C/C++,Java也支持单行以及多行注释。注释中的字符将被Java编译器忽略。
public class MyFirstJavaProgram{ /* 这是第一个Java程序 *它将打印Hello World * 这是一个多行注释的示例 */ public static void main(String []args){ // 这是单行注释的示例 /* 这个也是单行注释的示例 */ System.out.println("Hello World"); } }
Java 空行
空白行,或者有注释的的行,Java编译器都会忽略掉。
继承
在Java中,一個類別可以由其他類別衍生。如果你要建立一個類,而且已經存在一個類別具有你所需要的屬性或方法,那麼你可以將新建立的類別繼承該類別。
利用繼承的方法,可以重複使用已存在類別的方法和屬性,而不用重寫這些程式碼。被繼承的類別稱為超類別(super class),衍生類別稱為子類別(subclass)。
介面
在Java中,介面可理解為物件間相互通訊的協定。介面在繼承中扮演著很重要的角色。
介面只定義派生要用到的方法,但是方法的具體實作完全取決於衍生類別。
下一節介紹Java程式設計中的類別和物件。之後你將會對Java中的類別和物件有更清楚的認識。
以上就是Java基礎語法的內容,更多相關內容請關注PHP中文網(www.php.cn)!