1. 程式人生 > >this與super關鍵字(一)

this與super關鍵字(一)

一、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不能出現在靜態區域內