//定義一個類
class Customer{
//定義類的成員變量
String name;
String sex;
int age;
//構造函數,函數名與類名相同,不含傳回值。確定初始化
Customer(String name,String sex,int age) {
//函數内部的變量與類中的成員變量重名時,用this.标志該變量屬于類中的成員
this.name = name;
this.sex = sex;
this.age = age;
}
//成員函數
void display(){
System.out.println("name = " + name);
System.out.println("sex = " + sex);
System.out.println("age = " + age);
}
}
class Calc{
/*函數重載,在調用時系統能根據參數的不同決定調用相應的函數。
* 不能盲目将函數名定義相同,必須滿足一下條件之一:
* 1.函數參數個數不同
* 2.函數參數個數相同,類型不同
* 3.函數參數個數相同,類型相同,但是在參數清單中的出現順序不同
*/
int abs(int a){
return a>0?a:-a;
}
double abs(double a){
return a>0?a:-a;
}
}
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Customer zhangsan = new Customer("張三","男",25);//調用了構造函數
zhangsan.display();
System.out.println();//換行
//如果沒有定義構造函數,系統會自動為這個類産生一個預設的構造函數,該函數沒有參數,也不做任何事情
Calc c = new Calc();//調用了預設構造函數
System.out.println(c.abs(12.5));
System.out.println(c.abs(-10));
}
}
運作結果:
