多載 (overloading)
相似功能的函數,以相同的名稱來命名之;透過不同的引數個數,或是不同的型態,
來執行相對應的功能。
class CCircle
{
private String color;
private double pi=3.14;
private double radius;
public CCircle() // 這是一個沒有引數的建構元
{
System.out.println("constructor CCircle() called");
color="Green";
radius=1.0;
}
public CCircle(String str, double r) // 這是一個有兩個引數的建構元
{
System.out.println("constructor CCircle(String,double) called");
color=str;
radius=r;
}
public void show()
{
System.out.println("color="+color+", Radius="+radius);
System.out.println("area="+pi*radius*radius);
}
}
public class class_constructor_2
{
public static void main(String args[])
{
CCircle cir1=new CCircle(); // 建立物件
cir1.show();
CCircle cir2=new CCircle("Blue",4.0); // 建立物件,並設兩個值
cir2.show();
}
}
CCircle cir1=new CCircle();
CCircle cir2=new CCircle("Blue",4.0);