this與super關鍵字(一)
阿新 • • 發佈:2018-12-16
一、this關鍵字:
1、this在類中的普通作用:
1)this在java中就是指當前物件,在靜態方法中不能出現,可以通過(this.)的方法來呼叫當前物件的屬性和方法
2、this在構造器中的中的作用:
1)java類中的構造器之間是可以通過this(arg1,arg2)的形式相互呼叫的,但是this(arg1,arg2)必須寫在構造器的首行
2)注意這種呼叫只能在構造器裡面使用
public class App { private String a; private String b; public App() {super();//預設呼叫 } public App(String arg1) { this();//呼叫無參的構造器,且必須在首行 this.a = arg1; } public App(String arg1, String arg2) { this(arg1);//呼叫只有一個引數的構造器,且必須在首行 this.b = arg2; } }
二、super關鍵字:
1、super在類中的普通作用:
1)java中的super指的是繼承的父類的物件,在靜態方法中不能出現,可以通過(super. )的方式來呼叫父類物件的屬性和方法
2、super在構造器中的作用:
1)在構造器中可以通過super(arg1,arg2)方式呼叫在父類當中的構造器,而且super(arg1,arg2)必須寫在構造器的首行
2)注意這種呼叫只能在構造器裡面使用
3)不寫的話預設會呼叫super(),在這種情況下父類必須有無參構造器
三、總結:
1、在java類中的任何一個構造器的首行必定會有this(arg1,arg2)或者super(arg1,arg2),就算沒有也有預設值super()
2、java new的任何一個物件都會呼叫到Object類的Object()方法
3、this和super不能出現在靜態區域內