在Java編程中,this
和super
是兩個非常重要的關鍵字。
this
代表當前對象,它指向當前正在使用該方法的對象實例。在方法內(nèi)部使用this
可以訪問該對象的所有成員變量和方法。除此之外,在構造器中,this
可以調(diào)用重載的構造器,以達到代碼復用的目的。
public class Car { private String color; private int speed; public Car() { this("Red",0); } public Car(String color) { this(color, 0); } public Car(int speed) { this("Red", speed); } public Car(String color, int speed) { this.color = color; this.speed = speed; } public void drive() { System.out.println(this.color + " car is driving at " + this.speed + " mph."); } public static void main(String[] args) { Car car = new Car("Blue", 60); car.drive(); } }
super
代表父類對象,用于訪問父類的成員變量和方法。在子類中可以使用super()
調(diào)用父類的構造方法。如果在子類中重寫了父類的方法,可以使用super
調(diào)用父類的版本。
public class Cat { private String name; public Cat(String name) { this.name = name; } public void speak() { System.out.println("Meow"); } } public class Lion extends Cat { private int age; public Lion(String name, int age) { super(name); this.age = age; } @Override public void speak() { super.speak(); System.out.println("Roar"); } public static void main(String[] args) { Lion lion = new Lion("Simba", 3); lion.speak(); } }
在上面的例子中,子類Lion
重寫了父類Cat
的speak()
方法,并在該方法中調(diào)用了父類的版本。這個過程使用了super
關鍵字。
上一篇css解析不出來 ie8
下一篇css計算機編輯教程