1. 程式人生 > >(11.13)Java小知識!

(11.13)Java小知識!

成員 沒有 被調用 light java ont 16px bsp 簡單

今天想要與大家分享一下有關於構造方法的知識!

構造方法的定義與作用

構造方法是一種特殊類型的方法。當一個對象被創建的時候,構造方法用來初始化對象,也就是說構造方法其實是一個名詞而不是動詞,像我剛剛開始接觸的時候會把構造方法當成動詞理解,就比較麻煩。構造方法和它所在類的名字相同,但構造方法沒有返回值,因此不能再構造方法中使用return語句返回一個值。

構造方法的語法格式如下:

[訪問修飾符]<類名>([參數列表]){
    構造方法的語句體      
}

  其中,修飾符可以為public,protect,private;參數列表為參數,可以是空的;構造方法的語句體也可以是空的。

構造方法在程序設計中非常有用,他可以為類的成員變量進行初始化。當一個類的實例對象剛產生時,這個類的構造方法就會被調用,可以在這個方法中加入要完成初始化工作的代碼。無論是否自定義了構造方法,所有的類都有構造方法,因為Java自動提供了一個默認構造方法,這個默認構造方法沒有參數,在其方法體中也沒有任何的代碼,它把所有成員初始化為0,除此之外什麽都不做。然而一旦我們定義了自己的構造方法,默認構造方法就會失效。

以下是一個使用構造方法的例子:

//一個簡單的構造方法
class Demo{
    int x;
    Demo(){//構造方法
        x=1;
      }
}

  如何調用構造方法來初始化一個對象:

public class MyDemo{
    public static void main (String args[]){
            Demo a = new Demo();
            Demo b = new Demo();
             System.out.println(a.x+" "+b.x);
    }
}//運行結構為 :1  1

  以上的構造方法是無參構造方法,以下為大家編寫一個有參數的構造方法:

class Demo {//一個簡單的構造方法
    int x;
    Demo(int a){//有參數的構造方法
        x=a;
    }
}

  有參構造方法的調用類似無參構造方法:

public class MyDemo{
    public static void main (String args[]){
            Demo a = new Demo(5);
            Demo b = new Demo(10);
             System.out.println(a.x+" "+b.x);
    }
}//運行結果為:5 10

  下面用一個比較具體的例子來為大家展示構造方法的使用:

class Employee{
	private double employeeSalary = 2000;
	public Employee() {//一個構造方法
		System.out.print("該構造方法已被調用");
	}
	public void getSalary() {
		System.out.println("職員的基本薪水為:"+employeeSalary);
	}
public static class demo{
    public static void main(String[] args){
    	Employee a1 = new Employee();
    	a1.getSalary();
    	Employee a2 = new Employee();
    	a2.getSalary();
    }
}
}//運行結果為:構造方法被調用!職員的基本薪水為:2000.00
        構造方法被調用!職員的基本薪水為:2000.00

  通過我們上面列舉的實例運行結果我們可以看出,每創建一個Employee對象,Employee()方法都會自動調用一次。這就是構造方法的作用與運行結果。

(11.13)Java小知識!