1. 程式人生 > 資訊 >谷歌 Pixel 6 Pro 有望配備三星 E5 LTPO OLED 螢幕

谷歌 Pixel 6 Pro 有望配備三星 E5 LTPO OLED 螢幕

Java作為面向物件的語言。支援以下概念:

  • 多型
  • 繼承
  • 封裝
  • 抽象
  • 物件
  • 例項
  • 方法
  • 過載

本節研究物件和類。

  • 物件:物件是類的一個例項。
  • 類:類是一個模板。

下圖中男孩、女孩是類,而具體的每個人是該類的物件。



1. Java中的類

通過上圖建立一個簡單的類來理解Java中類的定義:

public class Dog{
    String breed;
    int size;
    String colour;
    int age;
    
    void eat(){
    }
    void run(){
    }
    void sleep(){
    }
    void name(){
    }
    
}

一個類可以包含以下類變數:

  • 區域性變數:在方法、構造方法或者語句塊中定義的變數被稱為區域性變數。變數宣告和初始化都在方法中,方法結束後,變數會自動銷燬
  • 成員變數:成員變數是定義在類中,方法體之外的變數。這種變數在建立物件的時候例項化。成員變數可以被類中的方法、構造方法和特定類的語句塊訪問。
  • 類變數:類變數也宣告在類中,方法體之外,但必須宣告為static型別

一個類可以有多個方法。



2. 構造方法

每個類都有構造方法。如果沒有顯式地為類構造方法,Java編譯器將會為該類提供一個預設構造方法。

建立一個物件的時候,至少呼叫一個構造方法。構造方法的名稱必須與類同名,一個類可以有多個構造方法

public class Puppy{
    public Puppy(){
        
    }
    public Puppy(String name){
        // 這個構造器只有一個引數:name
    }
}


3. 建立物件

物件是類建立的。用關鍵字new來建立物件

  • 宣告:宣告一個物件,包括物件名稱和物件型別。
  • 例項化:使用關鍵字 new 來建立一個物件。
  • 初始化:使用 new 建立物件時,會呼叫構造方法初始化物件。
public class Puppy{
    public Puppy(String name){
        // 這個構造器僅有一個引數:name
        System.out.println("小狗的名字是:" + name);
    }
    public static void main(String[] args){
        Puppy myPuppy = new Puppy("tommy");
    }
}

編譯、執行:

小狗的名字是 : tommy


4. 訪問例項變數和方法

通過已建立的物件來訪問成員變數和成員方法,如下所示:

/* 例項化物件 */
Object referenceVariable = new Constructor();
/* 訪問類中的變數 */
referenceVariable.variableName;
/* 訪問類中的方法 */
referenceVariable.methodName();


5. 原始檔宣告規則

當在一個原始檔中定義多個類,並且還有import語句和package語句時,特別注意這些規則。

  • 一個原始檔只能有一個public類
  • 一個原始檔可以有多個非public類
  • 原始檔的名稱和public類的類名保持一致
  • 如果一個類定義在某個包中,那麼package語句應該在原始檔的首行
  • 如果原始檔包含import語句,那麼應該放在package語句和類定義之間。如果沒有package語句,那麼import語句應該在原始檔中最前面
  • import語句和package語句對原始檔中定義的所有類都有效。在同一原始檔中,不能給不同的類不同的包宣告

類有若干種訪問級別,並且類也分不同的型別:抽象類和final類等。

除了上面幾種,還有特殊的類。如:內部類、匿名類。



6. Java包

包主要用來對類和介面進行分類。



7. import語句

在Java中,如果給出一個完整的限定名,包括包名、類名,那麼Java編譯器很容易定位到原始碼或者類。

例如:載入 java_installation/java.io路徑下的所有類

import java.io.*