Java學習筆記(二)——類和對象

【1】類是模子,確定對象將會擁有的特徵(屬性)和行爲(方法)。

【2】類的特點:類是對象的類型;

     具有相同屬性和方法的一組對象的集合。

【3】屬性:對象具有的各種特徵(每個對象的每個屬性都擁有特定值)。

【4】方法:對象執行的操作。

【5】定義一個類的操作:

a,定義類名 public class 類名{

b,編寫類的屬性 ~~ //定義屬性部分

c,編寫類的方法 ~~ //定義方法部分

}

【6】使用對象的步驟:

1,創建對象: 類名 對象名=new 類名();

2,使用對象: 引用對象的屬性——對象名.屬性();

 引用對象的方法——對象名.方法名();

【7】成員變量和局部變量區別:

1,作用域不同,局部變量僅限於定義它的方法。

2,初始值不同,java會給成員變量賦初值,不會給局部變量賦初值。

3,同一方法中不允許同名局部變量,不同方法中可以用同名局部變量。

4,兩類變量同名時,局部變量具有更高的優先級。

【8】構造方法:

1,使用new+構造方法 創建一個新的對象。

2,構造方法是定義在java類中的一個用來初始化對象的方法,構造方法與類同名且沒有返回值。

構造方法語句格式:

public 構造方法名(可以指定參數){

//初始化代碼

}

3,無參構造方法的使用:

main():

Telphone phone=new Telphone();

class Telphone:

public Telphone(){

代碼

}

4,帶參構造方法的使用:

main():

Telphone phone=new Telphone(4.0f);

class Telphone:

public Telphone(float newScreen){

代碼

}

5,當沒有指定構造方法時,系統會自動添加無參的構造方法。

6,當有指定的構造方法,無論是有參還是無參的構造方法,都不會自動添加無參的構造方法。

7,構造方法的重載。

8,構造方法不但可以給對象的屬性賦值,還可以保證給對象的屬性賦一個合理的值。

【9】static使用之靜態變量:

java中被static修飾的成員稱爲靜態成員或類成員。它被類的所有對象共享。靜態成員可以使用類名直接訪問,也可以使用對象名進行訪問。

使用static可以修飾變量、方法和代碼塊。

例:

public class HelloWorld{

//static修飾的變量爲靜態變量,所有類的對象共享hobby

static String hobby=“eat”;

public static void main(String[ ] args){

//靜態變量可以直接使用類名來訪問,無需創建類的對象

System.out.println(HelloWorld.hobby);

//創建類的對象

HelloWorld hello=new HelloWorld();

//使用對象名來訪問靜態變量

System.out.println(hello.hobby);

//使用對象名的形式修改靜態變量的值

hello.hobby=“drink”;

//再次使用類名訪問靜態變量,值已經被修改

System.out.println(hello.hobby);

}

}

【10】static使用之靜態方法:

public class HelloWorld{

//使用static關鍵字聲明靜態方法

public static void print(){

System.out.println(“喫喝玩樂”);}

public static void main(String[ ] args){

//直接使用類名調用靜態方法

HelloWorld.print();

//也可以使用通過對象名調用

HelloWorld demo=new HelloWorld();

demo.print();

}

}

****靜態方法中可直接調用同類中的靜態成員,但不能直接調用非靜態成員。若要在靜態方法中調用非靜態成員,需創建類的對象通過對象訪問。

****main方法是靜態方法。

****普通成員方法中可直接訪問同類的靜態變量和非靜態變量。

****靜態方法中不能直接調用非靜態方法,需通過對象訪問。

【11】static使用之靜態初始化塊:

靜態初始化塊只在類加載時執行,且只會執行一次,同時靜態初始化塊只能給靜態變量賦值,不能初始化普通的成員變量。

程序運行時,靜態初始化塊最先被執行,然後執行普通初始化塊,最後才執行構造方法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章