第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

全部開發(fā)者教程

Java 基礎(chǔ)語(yǔ)法

本小節(jié)我們將介紹 Java 語(yǔ)言的基礎(chǔ)語(yǔ)法,包括我們?cè)诰帉懙谝粋€(gè) Java 程序時(shí)已接觸過的類、主方法的概念,以及在編程中給源代碼文件和類起名字的時(shí)候應(yīng)該注意什么,什么樣的名字是可以使用的,什么樣的名字是不可以使用的,還有如何為代碼添加注釋等內(nèi)容。

只有掌握了這些最基礎(chǔ)的知識(shí),才能減少后續(xù)學(xué)習(xí)中的困擾,避免踩坑。

1. 基本語(yǔ)法

我們?cè)谇懊嫱瓿闪说谝粋€(gè) Java 程序,我們現(xiàn)在來回顧一下:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

整個(gè)程序看似簡(jiǎn)單,但包含很多基礎(chǔ)的知識(shí)點(diǎn)。下面我們將圍繞這個(gè)程序來介紹幾部分內(nèi)容:

  1. 大小寫敏感
  2. 主方法
  3. 源代碼文件

1.1 大小寫敏感

Java 語(yǔ)言是大小寫敏感的,這個(gè)知識(shí)點(diǎn)很好理解:所有的命名都區(qū)分大小寫 (文件名、類名、方法名等等)。

例如:HelloWorldhelloWorld 是不同的;Hello.javaHellO.java 也是不同的。

1.2 類

Java 是純面向?qū)ο蟮木幊陶Z(yǔ)言,因此 (class) 是一個(gè)程序的基本單位。所有的 Java 程序想要運(yùn)行,都離不開類。

我們可以來看看代碼的第一行:

public class HelloWorld {

其中,public 是一個(gè)關(guān)鍵字,它屬于訪問控制符,它表示這個(gè)類是公開的。關(guān)于什么是訪問控制符,在初學(xué)階段不必理解。

緊接著的 class 也是一個(gè)關(guān)鍵字用于聲明類, HelloWorld 是類名,類名的首字母要大寫。如果類名由多個(gè)單詞組成,那么每個(gè)單詞的首字母都要大寫。例如,我們可以這樣聲明一個(gè)表示慕課網(wǎng)學(xué)生的類:

public class ImoocStudent {
  	...
}

1.3 主方法

什么是主方法呢?請(qǐng)觀察示例代碼的 class 內(nèi)部(指的是類名 HelloWorld 后面用大括號(hào) {} 包含的內(nèi)容),這個(gè)方法被稱為主方法。每個(gè)類只能擁有一個(gè)主方法。

需要特別注意的是:所有的 Java 程序都從主方法開始執(zhí)行。 以下的寫法是固定的,所以你暫時(shí)無需深究:

public static void main(String[] args) {
    ...
}

而在主方法內(nèi)部(指的是 main() 后面一對(duì)大括號(hào)中間包含的內(nèi)容)我們可以定義一些指令,例如:

System.out.println("Hello World!");

我們稱這個(gè)指令為輸出語(yǔ)句,它的作用是向屏幕輸出 Hello World! 。輸出語(yǔ)句在后面會(huì)經(jīng)常用到。

我們也可以在主方法內(nèi)部多次調(diào)用輸出語(yǔ)句,以輸出多條內(nèi)容:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
public class ImoocStudent {
  	public static void main(String[] args) {
		System.out.println("第一行輸出:慕課網(wǎng)學(xué)生");
      	System.out.println("第二行輸出:快來慕課學(xué)編程");
    }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

另外補(bǔ)充一點(diǎn),類的內(nèi)部不僅可以包含一個(gè)主方法,也可以包含多個(gè)方法。在學(xué)習(xí)方法的概念之前,我們將主要在主方法中編寫示例代碼。

1.4 源代碼文件

既然源代碼需要提供給計(jì)算機(jī)執(zhí)行,我們就要將源代碼以文件的形式保存在計(jì)算機(jī)的磁盤上。

需要注意的是:源代碼文件的命名必須與類名相同,且后綴名為.java。例如:HelloWorld 類對(duì)應(yīng)的源代碼文件名應(yīng)該為 HelloWorld.java,而 ImmocStudent.java 源代碼文件的對(duì)應(yīng)類名為 ImmocStudent。

2. Java 標(biāo)識(shí)符

2.1 概念

在計(jì)算機(jī)編程語(yǔ)言中,標(biāo)識(shí)符是開發(fā)者編程時(shí)使用的名字,用于給變量、常量、函數(shù)、語(yǔ)句塊等命名,以建立起名稱與使用之間的關(guān)系。標(biāo)識(shí)符通常由字母和數(shù)字以及其它字符構(gòu)成。

在 Java 中,標(biāo)識(shí)符通常用來給類、對(duì)象、變量、方法、接口、自定義數(shù)據(jù)類型命名。

2.2 命名規(guī)范

標(biāo)識(shí)符都以字母(A-Z 或者 a-z),美元符號(hào)($)或下劃線(_)開始;首字母后可以是字母、數(shù)字、下劃線的任意組合;正如我們前面所提到的,標(biāo)識(shí)符是大小寫敏感的;需要特別注意的是,Java 中的關(guān)鍵字(本節(jié)最后將會(huì)介紹)不能被用作標(biāo)識(shí)符。

以下是合法的標(biāo)識(shí)符命名實(shí)例:

  • $name

  • _World

  • Imooc

  • imooc1

以下不合法的標(biāo)識(shí)符命名實(shí)例:

  • ¥color
  • 12name
  • *abc
  • final

3. Java 注釋和空行

3.1 概念

3.1.1 注釋

注釋是一種便于給人閱讀程序的文本,它不會(huì)被編譯器解析。養(yǎng)成多些注釋的習(xí)慣,不但有助于自己理解程序,也有助于別人更好地理解自己的程序。在團(tuán)隊(duì)協(xié)作的項(xiàng)目中,代碼注釋更加重要,代碼的研發(fā)人員通過編寫通俗易懂的注釋,可以極大地降低協(xié)作成員之間溝通成本。

下圖灰色部分為 Java 源碼中的注釋:

3.1.2 空行

空行就是空白行,與注釋一樣,同樣不會(huì)被編譯器解析。

適當(dāng)?shù)厥褂每招?,可以讓代碼的結(jié)構(gòu)看起來更好看,例如,下面程序中第 2 行、第 5 行和第 8 行都是空行:

1 class HelloImooc {
2    
3    public static void main(String[] args) {
4    	 System.out.println("你好慕課網(wǎng)");
5        
6        System.out.println("Hello, Imooc!");
7   }
8    
9}

3.2 注釋的分類

Java 語(yǔ)言提供了三種類別的注釋:

  1. 單行注釋
  2. 多行注釋
  3. 文檔注釋

3.2.1 單行注釋

單行注釋用于注釋一行文本,它以雙斜線開始,后面跟上要注釋的內(nèi)容,其寫法為:

// 被注釋的內(nèi)容

在 Java 代碼中,它是這樣的:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
public class HelloImooc {
  	// 定義入口方法
  	public static void main(String[] args) {
      	// 打印輸出:你好慕課網(wǎng)
      	System.out.println("你好慕課網(wǎng)");
    }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

3.2.2 多行注釋

多行注釋用于注釋多行文本,它以 /* 開頭,以 */ 結(jié)尾,其寫法為:

/*
被注釋的第一行內(nèi)容
被注釋的第二行內(nèi)容
被注釋的第三行內(nèi)容
*/

當(dāng)我們?cè)陂_發(fā)時(shí)為了方便調(diào)試,需要注釋一段多行的邏輯代碼,可以使用多行注釋:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
public class Dog {
  	private int age;
 	private String name;
  
  	/*
  	多行注釋,注釋了這段代碼
  	public Dog (String name, int age) {
  		this.name = name;
      	this.age = age;
    }
    */
    public static void main(String[] args) {
    }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

3.2.3 文檔注釋

Java 中還有一種特殊的多行注釋 —— 文檔注釋,它以 /** 開頭,以 */ 結(jié)尾,如果有多行,則每行都以 * 開頭,其在代碼中的寫法為:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
/**
 * HelloWorld 類
 * 它是我的第一個(gè) Java 程序
 * @Author: Colorful
 * @Date: 2020/02/02
 */
public class HelloWorld {
    /**
     * 主方法,向屏幕打印 Hello World!
     * @param args 主方法的固定參數(shù)
     */
  	public static void main(String[] args) {
      	System.out.println("Hello World!");
    }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

這種特殊的多行注釋需要寫在類和方法的定義處,可以使用 javadoc 這樣的命令來自動(dòng)創(chuàng)建文檔。另外通常在程序開頭加入作者,時(shí)間,版本,要實(shí)現(xiàn)的功能等內(nèi)容注釋,方便程序的維護(hù)以及程序員的交流。

4 關(guān)鍵字和保留字

4.1 概念

關(guān)鍵字 (Keyword) 是 Java 語(yǔ)言中的特殊標(biāo)記。它已經(jīng)被語(yǔ)言本身預(yù)先使用,因此我們不能使用關(guān)鍵字作為我們標(biāo)識(shí)符的命名。

例如 Java 基本類型的 int、boolean,流程控制語(yǔ)句中的 iffor,訪問修飾符 public,以及一些用于聲明和定義 Java 類、包、接口的 classpackage、interface。

而保留字 (Reserved word) 可能是未來的關(guān)鍵字,也就是說可能在未來的版本中,Java 語(yǔ)言作為特殊標(biāo)記。

Tips:無論是關(guān)鍵字還是保留字,我們都要記住:不能使用它們作為我們的代碼中的標(biāo)識(shí)符。

4.2 Java 中有哪些關(guān)鍵字

關(guān)鍵字一律用小寫字母標(biāo)識(shí),Java 語(yǔ)言中定義了如下表所示的關(guān)鍵字:

關(guān)鍵字 說明
abstract 表明類或者成員方法具有抽象屬性
assert 斷言,常用于程序的調(diào)試
boolean 基本數(shù)據(jù)類型:布爾類型
break 提前跳出一個(gè)塊
byte 基本數(shù)據(jù)類型,字節(jié)類型
case 用在 switch 語(yǔ)句之中,表示其中的一個(gè)分支
catch 用在異常處理中,用來捕捉異常
char 基本數(shù)據(jù)類型:字符類型
class 用于聲明一個(gè)類
const 保留關(guān)鍵字
continue 回到一個(gè)塊的開始處
default 默認(rèn),用在 switch 語(yǔ)句中,表明一個(gè)默認(rèn)的分支;JDK1.8 以后也作用于聲明接口函數(shù)的默認(rèn)實(shí)現(xiàn)
do 用在 do-while 循環(huán)結(jié)構(gòu)中
double 基本數(shù)據(jù)類型:雙精度浮點(diǎn)數(shù)類型
else 用在條件語(yǔ)句中,表明當(dāng)條件不成立時(shí)的分支
enum 枚舉
extends 表明一個(gè)類型是另一個(gè)類型的子類型。對(duì)于類,可以是另一個(gè)類或者抽象類;對(duì)于接口,可以是另一個(gè)接口
final 用來說明最終屬性,表明一個(gè)類不能派生出子類,或者成員方法不能被覆蓋,或者成員域的值不能被改變,用來定義常量
finally 用于處理異常情況,用來聲明一個(gè)基本肯定會(huì)被執(zhí)行到的語(yǔ)句塊
float 基本數(shù)據(jù)類型之一,單精度浮點(diǎn)數(shù)類型
for 一種循環(huán)結(jié)構(gòu)的引導(dǎo)詞
goto 保留關(guān)鍵字,沒有具體含義
if 條件語(yǔ)句的引導(dǎo)詞
implements 表明一個(gè)類實(shí)現(xiàn)了給定的接口
import 表明要訪問指定的類或包
instanceof 用來測(cè)試一個(gè)對(duì)象是否是指定類型的實(shí)例對(duì)象
int 基本數(shù)據(jù)類型之一,整數(shù)類型
interface 接口
long 基本數(shù)據(jù)類型之一,長(zhǎng)整數(shù)類型
native 用來聲明一個(gè)方法是由與計(jì)算機(jī)相關(guān)的語(yǔ)言(如 C/C++/FORTRAN 語(yǔ)言)實(shí)現(xiàn)的
new 用來創(chuàng)建新實(shí)例對(duì)象
package
private 一種訪問控制方式:私用模式
protected 一種訪問控制方式:保護(hù)模式
public 一種訪問控制方式:共用模式
return 從成員方法中返回?cái)?shù)據(jù)
short 基本數(shù)據(jù)類型之一,短整數(shù)類型
static 表明具有靜態(tài)屬性
strictfp 用來聲明 FP_strict(單精度或雙精度浮點(diǎn)數(shù))表達(dá)式遵循 IEEE 754 算術(shù)規(guī)范
super 表明當(dāng)前對(duì)象的父類型的引用或者父類型的構(gòu)造方法
switch 分支語(yǔ)句結(jié)構(gòu)的引導(dǎo)詞
synchronized 表明一段代碼需要同步執(zhí)行
this 指向當(dāng)前實(shí)例對(duì)象的引用
throw 拋出一個(gè)異常
throws 聲明在當(dāng)前定義的成員方法中所有需要拋出的異常
transient 聲明不用序列化的成員域
try 嘗試一個(gè)可能拋出異常的程序塊
void 聲明當(dāng)前成員方法沒有返回值
volatile 表明兩個(gè)或者多個(gè)變量必須同步地發(fā)生變化
while 用在循環(huán)結(jié)構(gòu)中

5. 小結(jié)

本小節(jié)我們學(xué)習(xí)了 Java 的基礎(chǔ)語(yǔ)法。我們知道了 Java 語(yǔ)言區(qū)分大小寫,類是一個(gè)程序的基本單位,所以說我們要編寫 Java 代碼,就要知道如何聲明一個(gè)類,而類中的主方法是一個(gè)程序執(zhí)行的起點(diǎn)。標(biāo)識(shí)符是我們程序員在編程時(shí)所使用的名字,當(dāng)我們?yōu)闃?biāo)識(shí)符命名時(shí),一定不能使用 Java 中的關(guān)鍵字。理解了注釋的概念和分類,另外也建議大家在編寫代碼的過程中多寫注釋,在學(xué)習(xí)別人代碼的過程中多看注釋。我們也將在后面的示例代碼中加入大量的注釋來幫助你理解程序。