天天看點

java 構造_java 構造方法

class MyTestClass {

public int Value;

public boolean equals(MyTestClass obj){

return obj.Value ==this.Value;

}

public MyTestClass(int initValue){

Value = initValue;

}

}

這是類的構造方法,或者構造函數;建立對象時,自動調用。與類名相同,沒有傳回值。若沒有定義構造函數,Java編輯器會自動提供一個沒有參數的構造函數;若定義一個構造函數,編輯器将不再提供構造函數。例如:

public class Test{

public static void main(String[] args){

Foo obj1=new Foo();

}

}

class Foo{

int value;

public Foo(int initvalue){

value=initvalue;

}

}

這個函數會編輯出錯。。

下面這個例子更加說明構造函數和預設構造函數

package jxlPacakge;

public class InitializeBlockDemo {

public static void main(String[] args) {

InitializeBlockClass obj=new InitializeBlockClass();

System.out.println(obj.field);

obj=new InitializeBlockClass(300);

System.out.println(obj.field);

}

}

class InitializeBlockClass{

//下面這句在初始化塊之前與之後,會影響到field字段的初始值

//public int field=100;

{

field=200;

}

public int field=100;

public InitializeBlockClass(int value){

this.field=value;

}

public InitializeBlockClass(){

}

}

java 構造_java 構造方法