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