JAVA學習之類和對象篇(二)

運行Java程序,定義了很多類之后需要某個類作為入口類(相當于程序的入口),那個類里面會有一個入口函數(shù):main函數(shù),函數(shù)里寫這個程序所要執(zhí)行的代碼。

public class init{
  public static void main(String[] args){
    //寫要運行的代碼
  }
}

一.定義Java中的類(屬性+方法)

定義一個類名+編寫類的屬性+編寫類的方法

public class 類名{
  //定義屬性部分(成員變量    屬性1的類型  屬性1;
  屬性2的類型  屬性2;
  //定義方法部分
  方法1返回值類型  方法1;
  方法2返回值類型  方法2;
}

二.JAVA對象

1.創(chuàng)建對象:

類名(對象類型) 對象名=new 類名( );
HelloWord helloword=new HelloWord( );

2.使用對象:

引用屬性:對象名.屬性
引用方法:對象名.方法

三.成員變量和局部變量

圖片發(fā)自南三號

作用域:

  • 局部變量:僅限于定義它的那個方法中,比如上圖中方法一中的變量只能在方法一中使用
  • 成員變量:在整個類的內(nèi)部都是可見的(類中共享)

初始值:

  • 成員變量:自動擁有初始值0
  • 局部變量:不會有初始值,所以要給初始值
  • 特別注意
    同一方法不能有同名局部變量
    不同方法中可以有同名局部變量
    兩類變量同名時,局部變量具有更高的優(yōu)先級(就近原則)

四.構造方法(有參和無參)

  • 無參的構造方法:當沒有自定義構造方法時,系統(tǒng)會自動添加一個無參的構造方法,如果你覺得不滿意,可以自定義無參構造方法。
  • 有參的構造方法:方便實例化對象的初始化(即對象屬性賦合理初值)。傳值不正確可以在構造函數(shù)中進行判斷,避免傳值不安全。
  • 特別注意:當你自定義了構造方法,系統(tǒng)就不會為你自動添加。如果你自定義了一個有參的構造方法,你就不能使用無參的構造方法,如果想要使用,則必須再自定義一個無參的構造方法。
  • 構造方法的重載:根據(jù)初始化值的不同要求,定義多個有參的構造函數(shù)。

六.java中的static使用

1.靜態(tài)變量:

類中的靜態(tài)變量不是被某一個實例對象特有,而是所有對象共享,用對象名,類名都可以進行訪問,推薦使用類名訪問:

public class HelloWorld {
    // 定義靜態(tài)變量我的名字
    static String myName = "南三號";
    public static void main(String[] args) {
        // 訪問靜態(tài)變量,輸出我的名字
        System.out.println(HelloWorld.myName);
    }
}

2.靜態(tài)方法:

性質(zhì)及使用方法與靜態(tài)變量類似
用對象名或者類名調(diào)用靜態(tài)方法

public class HelloWorld {
    // 定義靜態(tài)方法輸出我的名字
    public static void print( ){
        System.out.println(“南三號”)
    }
    public static void main(String[] args) {
        // 訪問靜態(tài)方法,輸出我的名字
        HelloWorld.print( );
    }
}

注意:靜態(tài)方法能直接調(diào)用同類中的靜態(tài)變量,但不能調(diào)用非靜態(tài)變量。想要調(diào)用必須先實例化一個對象。
而普通方法則都可以調(diào)用。

3.靜態(tài)初始化塊

  • 執(zhí)行優(yōu)先級:
    靜態(tài)初始化塊>初始化塊>構造函數(shù)
  • 代碼示例:
public class HelloWorld {
    int num1,num2;
    static int num3;
    // 構造方法
    public   HelloWorld () { 
        num1=1;
    }
    // 初始化塊
    { 
        num2=2;
    }
    // 靜態(tài)初始化塊
    static   { 
        num3=3;
    }
}
  • 注意:靜態(tài)初始化塊只在加載類的時候加載一次,且只能初始化靜態(tài)變量的值,不能初始化普通變量。
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容