區別方法重寫(覆蓋)和方法重載?
方法重寫:方法名字、參數列表和返回類型必須相同。類中只允許出現一次這樣的方法,要接著往子類當中寫入。類中的方法覆蓋,父類和子類都可以相同。
方法重載:方法名字相同,參數列表必須要不同,返回類型隨意。構造器就是典型的方法重載。
this和super關鍵字的用法:this表示的本類的方法和成員;super表示父類的方法和成員。this()和super()都必須放在一個方法的開頭。
如果子類構造器中沒有顯式地調用父類構造器,也沒有使用this關鍵字調用重載的其他構造器,則系統默認調用父類無參數的構造器,super()。
塊執行:
在一個類中有初始化塊要先執行,然后再是構造器。
如:
public class Test
{
String name;
int age;
String sex;
public Test()
{
System.out.println("Test1被調用");
sex ="Male";
System.out.println("name="+name+" ,age="+age+" ,sex="+sex);
}
public Test(String theName)
{
System.out.println("Test2被調用");
name = theName;
System.out.println("name="+name+" ,age="+age+" ,sex="+sex);
}
{
name = "Tony Blair";
age = 50;
sex = "Female";
System.out.println("Test初始化塊執行后:name="+name
+" ,age="+age+" ,sex="+sex);
}
public static void main(String args[])
{
Test t=new Test();
}
}