Java學習筆記(一)

java語法學習

對象和類

  • 對象:對象是類的一個實例,有狀態(tài)和行為。例如,一條狗是一個對象,它的狀態(tài)有:顏色、名字、品種;行為有:搖尾巴、叫、吃等。
  • :類是一個模板,它描述一類對象的行為和狀態(tài)。

Java中的對象

軟件對象也有狀態(tài)和行為。軟件對象的狀態(tài)就是屬性,行為通過方法體現(xiàn)。
在軟件開發(fā)中,方法操作對象內(nèi)部狀態(tài)的改變,對象的相互調(diào)用也是通過方法來完成。

Java 中的類

類可以看成是創(chuàng)建Java對象的模板


public class Dog {
    /** 屬性 */
    String breed;
    int size;
    String colour;
    int age;
    /** 方法 */
    void eat() {
    }
    void run() {
    }
    void sleep(){
    }
    void name(){
    }
}

一個類中可以包含以下變量類型:

  • 局部變量:在方法、構(gòu)造方法或者語句塊中定義的變量被稱為局部變量。變量聲明和初始化都是在方法中,方法結(jié)束后,變量就會自動銷毀。
  • 成員變量:成員變量是定義在類中,方法體之外的變量。這種變量在創(chuàng)建對象的時候?qū)嵗3蓡T變量可以被類中方法、構(gòu)造方法和特定類的語句塊訪問。
  • 類變量:類變量也聲明在類中,方法體之外,但必須聲明為 static 類型。

構(gòu)造方法

在創(chuàng)建一個對象的時候,至少要調(diào)用一個構(gòu)造方法。構(gòu)造方法的名稱必須與類同名,一個類可以有多個構(gòu)造方法。
(例如:要創(chuàng)建一個dog1對象,必須使用和Dog類同名的方法Dog())

創(chuàng)建對象

對象是根據(jù)類創(chuàng)建的。在Java中,使用關(guān)鍵字 new 來創(chuàng)建一個新的對象。創(chuàng)建對象需要以下三步:

  • 聲明:聲明一個對象,包括對象名稱和對象類型。
  • 實例化:使用關(guān)鍵字 new 來創(chuàng)建一個對象。
  • 初始化:使用 new 創(chuàng)建對象時,會調(diào)用構(gòu)造方法初始化對象。
    一個創(chuàng)建對象的例子:
public class Dog{
   public Dog(String kind){
      //這個構(gòu)造器僅有一個參數(shù):kind
      System.out.println("狗的種類是 : " + kind ); 
   }
   public static void main(String[] args){
      // 下面的語句將創(chuàng)建一個Dog對象
      Dog dogKind = new Dog( "Teddy" );
   }
}

訪問實例變量和方法

下面的例子展示如何訪問實例變量和調(diào)用成員方法:

public class Car{
   String carColor;
   public Car(String type){
      // 這個構(gòu)造器僅有一個參數(shù):type
      System.out.println("車的種類是 : " + type); 
   }
 
   public void setAge( String color){
       carColor = color;
   }
 
   public int getColor( ){
       System.out.println("汽車的顏色為 : " +color ); 
       return carColor;
   }
 
   public static void main(String[] args){
      /* 創(chuàng)建對象 */
      Car myCar = new Car( "Ferrari" );
      /* 通過方法來設定color */
      myCar.setColor( black );
      /* 調(diào)用另一個方法獲取color */
      myCar.getColor( );
      /*你也可以像下面這樣訪問成員變量 */
      System.out.println("變量值 : " + myCar.carColor ); 
   }

Java包

Java變量類型

局部變量
實例變量
類變量

Java修飾符

訪問控制修飾符

Java中,可以使用訪問控制符來保護對類、變量、方法和構(gòu)造方法的訪問。Java 支持 4 種不同的訪問權(quán)限。

  • default (即默認,什么也不寫): 在同一包內(nèi)可見,不使用任何修飾符。使用對象:類、接口、變量、方法。

  • private : 在同一類內(nèi)可見。使用對象:變量、方法。 注意:不能修飾類(外部類)

  • public: 對所有類可見。使用對象:類、接口、變量、方法

  • protected : 對同一包內(nèi)的類和所有子類可見。使用對象:變量、方法。 注意:不能修飾類(外部類)。

非訪問控制修飾符

為了實現(xiàn)一些其他的功能,Java 也提供了許多非訪問修飾符。

static 修飾符,用來修飾類方法和類變量。

final 修飾符,用來修飾類、方法和變量,final 修飾的類不能夠被繼承,修飾的方法不能被繼承類重新定義,修飾的變量為常量,是不可修改的。

abstract 修飾符,用來創(chuàng)建抽象類和抽象方法。

synchronized 和 volatile 修飾符,主要用于線程的編程。

循環(huán)

增強for循環(huán)

聲明語句:聲明新的局部變量,該變量的類型必須和數(shù)組元素的類型匹配。其作用域限定在循環(huán)語句塊,其值與此時數(shù)組元素的值相等。
表達式:表達式是要訪問的數(shù)組名,或者是返回值為數(shù)組的方法。
實例:

public class Test {
   public static void main(String[] args){
      int [] numbers = {11, 22, 33, 44, 55};
 
      for(int x : numbers ){
         System.out.print( x );
         System.out.print(" ");
      }
      System.out.print("\n");
      String [] Colors ={"blue", "red", "black", "white"};
      for( String color : Colors ) {
         System.out.print( color );
         System.out.print(" ");
      }
   }
}

輸出結(jié)果:

11 22 33 44 55
blue red black white

break關(guān)鍵字

break 跳出最里層的循環(huán),并且繼續(xù)執(zhí)行該循環(huán)下面的語句。
實例

public class Test {
   public static void main(String[] args) {
      int [] numbers = {11, 22, 33, 44, 55};
 
      for(int x : numbers ) {
         // x 等于 30 時跳出循環(huán)
         if( x == 30 ) {
            break;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

輸出

11 
22

continue關(guān)鍵字

讓程序立刻跳轉(zhuǎn)到下一次循環(huán)的迭代。

public class Test {
   public static void main(String[] args) {
      int [] numbers = {11, 22, 33, 44, 55};
 
      for(int x : numbers ) {
         if( x == 44) {
        continue;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

輸出

11 
22 
33 
55

Java數(shù)組

聲明數(shù)組變量

dataType[] arrayRefVar;  // 首選的方法

創(chuàng)建數(shù)組變量

Java語言使用new操作符來創(chuàng)建數(shù)組,語法如下:

arrayRefVar = new dataType[arraySize];

數(shù)組變量的聲明,和創(chuàng)建數(shù)組可以用一條語句完成,如下所示:

dataType[] arrayRefVar = new dataType[arraySize];

正則表達式

(見:正則表達式 )

Java方法

方法

Java方法是語句的集合,它們在一起執(zhí)行一個功能。

  • 方法是解決一類問題的步驟的有序組合
  • 方法包含于類或?qū)ο笾?/li>
  • 方法在程序中被創(chuàng)建,在其他地方被引用

方法的定義

方法的調(diào)用

Java 支持兩種調(diào)用方法的方式,根據(jù)方法是否返回值來選擇。
當程序調(diào)用一個方法時,程序的控制權(quán)交給了被調(diào)用的方法。當被調(diào)用方法的返回語句執(zhí)行或者到達方法體閉括號時候交還控制權(quán)給程序。

  • 當方法返回一個值的時候,方法調(diào)用通常被當做一個值。
  • 如果方法返回值是void,方法調(diào)用一定是一條語句

方法的重載

構(gòu)造方法

  • 當一個對象被創(chuàng)建時候,構(gòu)造方法用來初始化該對象。構(gòu)造方法和它所在類的名字相同,但構(gòu)造方法沒有返回值。
  • 通常會使用構(gòu)造方法給一個類的實例變量賦初值,或者執(zhí)行其它必要的步驟來創(chuàng)建一個完整的對象。
  • 不管你是否自定義構(gòu)造方法,所有的類都有構(gòu)造方法,因為 Java 自動提供了一個默認構(gòu)造方法,默認構(gòu)造方法的訪問修飾符和類的訪問修飾符相同。
  • 一旦你定義了自己的構(gòu)造方法,默認構(gòu)造方法就會失效。

可變參數(shù)

Java 流(Stream)、文件(File)和IO

Java 流(Stream)、文件(File)和IO

Java異常處理

異常處理

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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

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