CodeGym /Java Blog /Toto sisi /Java 語法:編程語言的簡要介紹
John Squirrels
等級 41
San Francisco

Java 語法:編程語言的簡要介紹

在 Toto sisi 群組發布

什麼是 Java 語法?

Java 語法是該語言的基礎,是編寫編譯器和計算機“理解”的程序的所有主要規則、命令和結構。每種編程語言都有其語法和人類語言。本文重點介紹 Java 編程語言的基本語法,適用於新手開發人員或了解其他編程語言的開發人員。有些方面初學者可能不太清楚。如果是這樣,最好跳過它們並專注於示例。與其他所有事情一樣,最好循環學習一種編程語言,逐漸對某些概念有更深入的理解。每個 Java 程序都是一堆對象,它們通過數據(變量)和行為(函數或方法)相互結合。Java程序也是一個類或幾個類。對像是類的實例。你可以把類理解為一個模型,比如餅乾模和餅乾之類的對象。或者類為抽象的“Java 程序員”,對象為“Java 程序員 John”或“Java 程序員 Ivy”。

Java 中的對象

Java 中的對象具有狀態和行為。示例:一隻貓有狀態:它的名字是 Furr,顏色是紅色,主人是 John;貓也有行為 現在 Furr 正在睡覺。他還可以發出呼嚕聲、走路等等。對像是類的實例。

Java類

是對象的模型或模板或藍圖。它描述了其類型的對象支持的行為和狀態。例如,類有它的名字、顏色、主人;貓也有吃、咕嚕咕嚕、走路、睡覺等行為。

Java 中的方法

方法用於描述邏輯、操作數據和執行所有操作。每個方法都定義了行為。一個類可以包含很多方法。例如,我們可以為Cat類編寫方法sleep()(睡眠)或purr()來發出呼嚕聲。

Java 中的實例變量

每個對像都有一組唯一的實例變量。對象狀態通常由分配給這些實例變量的值生成。例如貓的名字或年齡可以是一個變量。我們將從最簡單的 Java 程序開始。通過這個示例,我們將了解 Java 語法的基本概念,然後進一步了解它們。

簡單的 Java 程序:你好,Java!

下面是一個簡單的 Java 程序:

class HelloJava {
   public static void main(String[] args) {
       System.out.println("Hello, Java!");
   }
}
這個程序打印出一個字符串“Hello, Java!” 安慰。我建議你安裝 JDK 和 IntelliJ IDEA 並嘗試寫出你上面看到的代碼。或者第一次嘗試找一個在線 IDE 來做同樣的事情。現在讓我們一行一行地看這個程序,但是省略了一些對於初學者來說不需要的細節。

class HelloJava 
Java 中的每個程序都是一個類,或者更常見的是許多類。class HelloJava這一行的意思是這裡我們新建一個類,名字叫HelloJava。正如我們上面所定義的,類是一種模板或藍圖,它描述了類對象的行為和狀態。這對新手程序員來說可能很難,稍後您將了解這個概念。現在類 HelloJava 只是您程序的開始。您可能已經註意到同一行和整個文本中的花括號{ 。一對花括號{}表示一個塊,一組被視為一個單元的編程語句。其中{表示單元的開頭和}它的結局。塊可以相互嵌套,也可以是順序的。上面的程序中有兩個嵌套塊。外部包含類Hello的主體。內部塊包含main()方法的主體。

public static void main (String args []) {
這是主要方法的開始。方法是一種行為,或者是允許您在程序中執行操作的命令序列。例如乘以 2 個數字或打印出一個字符串。換句話說,一個方法就是一個函數。在其他一些編程語言中,方法通常被稱為“函數”。方法,就像 Java 程序的所有元素一樣,位於一個類中。每個類可以有一個、多個或沒有方法。Java 語法:編程語言的簡要介紹 - 2public是一個訪問修飾符。可以從程序中的任何位置訪問標有 public 修飾符的變量、方法或類。在 Java 中有四種:public、private、protected 和 default(空)。我們稍後再談。第一步最好公開所有方法。 空白是方法的返回類型。Void 表示它不返回任何值。 main代表程序的起點。這是方法的名稱。 String[] args 是主要方法參數。現在知道幾乎每個 Java 程序都有main方法就足夠了,它啟動程序並聲明諸如public static void main(String[] args) 靜態方法是與類一起工作的方法。在聲明中使用static關鍵字的方法只能直接使用局部變量和靜態變量。

 System.out.println("Hello, Java!"); 
正式地,這一行執行了 out 對象的 println 方法。out 對像在OutputStream類中聲明,並在System類中靜態初始化。然而,對於一個新手來說,這有點複雜。初學者知道這一行打印單詞“Hello, Java!”就足夠了。到控制台。因此,如果您在 IDE 中運行該程序,您將在控制台中獲得輸出:Java 語法:編程語言的簡要介紹 - 3

Java基本語法規則

使用 Java 編程時需要遵循一些主要的語法規則:
  • 文件名必須與類名相同;
  • 大多數情況下,每個類都在一個單獨的文件中,擴展名為 .java。類文件通常分組到文件夾中。這些文件夾稱為包;
  • 字符區分大小寫。字符串不等於字符串
  • Java程序處理的開始總是從main方法開始:public static void main(String[] args)。main ()方法是任何 Java 程序的必需部分;
  • 方法(過程、函數)是一系列命令。方法定義對象的行為;
  • 程序文件中方法的順序無關緊要;
  • 請記住,類名的第一個字母是大寫的。如果您使用多個單詞,請將每個單詞的首字母大寫(“MyFirstJavaClass”);
  • Java 語法中所有方法的名稱都以小寫字母開頭。當使用多個單詞時,後面的字母大寫("public void myFirstMethodName()");
  • 文件以類名和 .java 擴展名(“MyFirstJavaClass.java”)保存;
  • 在Java語法中,有分隔符“{...}”表示一段代碼和一個新的代碼區域;
  • 每個代碼語句必須以分號結尾。
Java變量和數據類型變量是用來存儲數據的特殊實體。任何數據。在 Java 中,所有數據都存儲在變量中。你可以說變量是一個預留的地方或一個盒子來放置變量。每個變量都有它的數據類型、名稱(標識符)和值。數據類型可以是原始的和非原始的或引用的。原始數據類型可以是:
  • 整數:byte、short、int、long
  • 小數:float 和 double
  • 邏輯值:布爾
  • 符號值(用於表示字母和數字):char

Java變量示例:


int s;
s = 5;  
char myChar = ‘a’; 
在這段代碼中,我們創建了一個整數變量s(一個空容器),然後將值 5 放入其中。同樣的故事還有一個名為myChar的變量。我們使用 char 數據類型創建它並將其定義為字母a。在本例中,我們創建了一個變量並同時為其賦值。Java 語法允許您這樣做。引用類型是一些保留對值或其他對象的引用的對象。它們還可以包含對 null 的引用。Null 是一個特殊值,表示沒有值。引用類型包括字符串、數組和您想要的每個類。如果你有一個 Violin 類,你可以創建一個這個類的變量。Java 引用類型變量示例:

String s = “my words”; 
Violin myViolin; 
稍後您將了解更多關於它們的信息。請記住,非原始類型的變量以大寫字母開頭,而原始類型則以小寫字母開頭。例子:

int i = 25;
String s = “Hello, Java!”; 

Java數組

數組是存儲相同類型的多個變量的對象。但是,數組本身是堆上的一個對象。我們將在接下來的章節中研究如何聲明、構造和初始化。數組示例:

int[] myArray = {1,7,5};
這裡我們有一個包含三個整數(1,7 和 5)的數組

Java 枚舉

除了基本數據類型之外,Java 還有一種類型,如枚舉或枚舉。枚舉表示邏輯上相關的常量的集合。枚舉是使用枚舉運算符聲明的,後跟枚舉的名稱。然後是一個逗號分隔的枚舉元素列表:

enum DayOfWeek {
     MONDAY,
     TUESDAY,
     WEDNESDAY,
     THURSDAY,
     FRIDAY,
     SATURDAY,
     SUNDAY
}
一個枚舉實際上代表了一個新的類型,所以我們可以定義一個該類型的變量並使用它。下面是一個使用枚舉的例子。

Java 枚舉示例


public class MyNum{      
    public static void main(String[] args) {
          
        Day myDay = DayOfWeek.FRIDAY;
        System.out.println(myDay);	//print a day from the enum     
}
}
enum DayOfWeek{
  
    MONDAY,
    TUESDAY,
    WEDNESDAY,
    THURSDAY,
    FRIDAY,
    SATURDAY,
    SUNDAY
}
如果您運行該程序,FRIDAY 將打印在控制台中。您可以將 Enum 和 MyNum 類代碼放在一個文件中,但最好創建兩個單獨的文件:一個用於 MyNum 類,一個用於 Day 枚舉。IntelliJ IDEA 允許您在創建時選擇枚舉。Java 語法:編程語言的簡要介紹 - 4

在 Java 中聲明變量

實際上我們在上面已經聲明了一些變量,甚至識別了它們。聲明是為某種類型的變量分配內存並命名的過程。像這樣的東西:

int i; 
boolean boo; 
我們還可以聲明使用賦值運算符 (=) 來初始化變量。這意味著我們將特定值放入我們分配的內存中。我們可以在聲明的那一刻或之後做正確的事。

聲明變量示例


String str; 
int i = 5; 
Str = “here is my string”; 
如果你在沒有初始化的情況下聲明一個變量,它無論如何都會得到一些默認值。對於 int 此值為 0,對於 String 或任何其他引用類型,它是一個特殊的標識符。

Java 標識符

標識符只是 Java 組件的名稱——類、變量和方法。所有 Java 組件都應該有名稱。

Class Violin {
int age; 
String masterName;  
}
Violin是類標識符。 agemasterName是變量標識符。這裡有一些 Java 標識符規則:
  • 所有標識符都以拉丁字母(A 到 Z 或 a 到 z)、貨幣字符 ($) 或下劃線 (_) 開頭。
  • 在第一個字符之後,標識符可以是任意字符組合。
  • Java 關鍵字不能是標識符(您稍後會發現關鍵字)。
  • 標識符區分大小寫。

標識符示例

合法標識符:java、$mySalary、_something 非法標識符:1stPart、-one

Java修飾符

修飾符是 Java 語言的特殊詞,可用於修飾元素(類、方法、變量)。Java 有兩類修飾符:訪問修飾符和非訪問修飾符。

訪問修飾符示例

Java 中有 4 種訪問修飾符:
  • 公開的。一個公共元素 可以在類內、類外、包內和包外訪問
  • 具有默認(空)修飾符的元素只能在包內訪問
  • protected修飾符可以通過子類在包內外訪問
  • 私有元素僅在它聲明的類中可用。

非訪問修飾符示例

有7個
  • 靜止的
  • 最終的
  • 抽象的
  • 同步的
  • 短暫的
  • 易揮發的
  • 本國的

關鍵字

Java 關鍵字是在 Java 中用作代碼鍵的特殊詞。它們也被稱為保留字:您不能將它們用作變量、方法、類等的標識符。它們是:
  • abstract:聲明抽像類的關鍵字。
  • boolean:Java boolean 關鍵字,用於將變量聲明為布爾類型。這樣的變量只能是真和假。
  • break:使用 Java break 關鍵字來中斷循環或 switch 語句。
  • byte:用於聲明一個字節整數變量的 Java byte 關鍵字。
  • case:用於與 switch 語句一起標記文本塊。
  • catch:用於捕獲try塊之後的異常。
  • char:字符變量的 Java char 關鍵字。它可以容納無符號的 16 位 Unicode 字符。
  • class:用於聲明類的 Java class 關鍵字。
  • continue:繼續循環的 Java 關鍵字。
  • default:Java default 關鍵字,用於指定 switch 語句中的默認代碼塊。
  • do:用於 do-while 循環構造。
  • double:Java double 關鍵字用於聲明一個數字變量。它可以容納 8 字節的浮點數。
  • else:您可以在 else-if 條件語句中使用它。
  • 枚舉:用於定義一組固定的常量。
  • extends:Java extends 關鍵字表示一個類擴展了另一個類(是另一個類的子類)。
  • final:關鍵字表示變量是常量。
  • finally:標記一個代碼塊,無論是否處理異常都將執行。
  • float:一個包含 4 字節浮點數的變量。
  • for:開始 for 循環的關鍵字。它用於在某些條件為真時重複執行一組指令。
  • if:用於檢查條件的關鍵字。如果條件為真,它將執行塊。
  • implements:實現接口的關鍵字。
  • import:Java import 關鍵字,用於導入包、類或接口。
  • instanceof:檢查對像是否是特定類或接口的實例。
  • int:一個可以保存 4 字節有符號整數的變量。
  • interface:Java 接口關鍵字用於聲明接口。
  • long:一個可以保存 8 字節有符號整數的變量。
  • native:指定方法是使用 JNI(Java 本機接口)在本機代碼中實現的。
  • new:用於創建新對象的 Java new 關鍵字。
  • package:為 Java 類文件聲明一個 Java 包(文件夾)。
  • private:訪問修飾符表示方法或變量可能僅在其聲明的類中可見。
  • protected:訪問修飾符表示可以通過子類在包內外訪問方法或變量。
  • public:訪問修飾符表示元素可以在任何地方訪問。
  • return:返回方法執行的結果。
  • short:一個可以保存 2 字節有符號整數的變量。
  • static:表示一個變量或方法是一個類,而不是一個對象,方法。
  • strictfp:限制浮點計算。
  • super:指的是父類對象。
  • switch:選擇要執行的代碼塊(或其中的許多代碼塊)。
  • synchronized:非訪問修飾符。它指定該方法一次只能由一個線程訪問。
  • this:引用方法或構造函數中的當前對象。
  • throw:用於顯式拋出異常。
  • throws : 聲明一個異常。
  • transient:瞬態數據片段無法序列化。
  • try:啟動一個代碼塊,將檢查異常。
  • void:指定方法不返回值。
  • volatile:表示變量可以異步更改。
  • while:開始一個 while 循環。當條件為真時,多次迭代程序的一部分。

Java 中的註釋

Java 支持單行和多行註釋。任何註釋中可用的所有字符都會被 Java 編譯器忽略。開發人員使用它們來解釋代碼或回憶某些事情。評論示例:

//single-line comment 
/*here we have a multi-line comment. As you can see it uses slash and asterisks from both sides of it.*/   

public class HelloJava {
   /* this program was created to demonstrate comments in Java. This one is a multi-line comment.
   You can use such comments anywhere in your programs*/
   public static void main(String[] args) {
       //here is a single-line comment
       String j = "Java"; //This is my string
       int a = 15; //here I have an integer
       System.out.println("Hello, " + j + " " + a + "!");
       int[] myArray = {1,2,5};
       System.out.println(myArray.length);
   }
}

Java 中的文字

Java 中的文字是分配給變量的一些常量值。它們可以是數字或文本或其他表示值的東西。
  • 積分文字
  • 浮點字面量
  • 字符文字
  • 字符串文字
  • 布爾文字

Java 文字示例


 int i = 100; //100 is an integral  literal 
double d = 10.2;//10.2 is a floating point literal 
char c = ‘b’; //b is a char literal 
String myString = “Hello!”; 
boolean bool = true; 
注意:null也是文字。

Java 中的基本運算符

有不同類型的運算符:算術
  • +(數字加法和字符串連接)
  • –(減去或減去)
  • *(乘法)
  • / (分配)
  • %(模數或餘數)
比較
  • <(小於)
  • <=(小於或等於)
  • >(大於)
  • >=(大於或等於)
  • ==(等於)
  • !=(不等於)
合乎邏輯
  • && (和)
  • || (或者)
  • !(不是)
  • ^(異或)
我們已經了解了數據類型、變量、方法和運算符。讓我們看一個簡單的代碼示例,但比第一個 Java 程序要復雜一些。讓我們創建一個名為NumberOperations的類

public class NumbersOperations {
   int a;
   int b;
   public static int add(int a,int b){
       return a+b;
   }
   public static int sub (int a, int b){
       return a-b;
   }
   public static double div (double a, int b){
       return a/b;
   }
}
這裡我們有一個帶有樹方法的類,可以用 2 個數字進行操作。您可以嘗試編寫第 4 種方法int mul (int a, int b)以在該程序中乘以 2 個數字。讓我們也創建一個類來演示NumberOprations 的工作:

public class NumberOperationsDemo {
   public static void main(String[] args) {
       int c = NumbersOperations.add(4,5);
       System.out.println(c);
       double d = NumbersOperations.div(1,2);
       System.out.println(d);
   }
}
如果您運行NumberOperationsDemo,您將獲得下一個輸出:
9 0.5

結論

這些只是 Java 語言的基礎知識,很多東西可能會令人困惑。需要大量的編程才能弄清楚什麼是什麼。這是您學習這門語言的唯一途徑——通過練習。立即開始編碼,嘗試完成CodeGym 實用 Java 課程的第一個任務。祝您 Java 學習順利!
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION