java中super是什么意思? java里super表示什么

Java中super是什么意思

在Java中,super是一个关键字,用于表示父类的引用。它可以用来访问父类的属性、方法和构造函数。

使用super访问父类属性和方法

1. 访问父类属性

使用super关键字可以访问父类的属性。例如:

``` public class Animal { protected String name; } public class Dog extends Animal { public void printName() { System.out.println(super.name); } } ```

在这个例子中,Dog类继承了Animal类,并且重写了Animal类的name属性。在printName方法中,我们使用super关键字来访问父类的name属性。

2. 访问父类方法

使用super关键字可以访问父类的方法。例如:

``` public class Animal { public void eat() { System.out.println("Animal is eating."); } } public class Dog extends Animal { public void eat() { super.eat(); System.out.println("Dog is eating."); } } ```

在这个例子中,Dog类继承了Animal类,并且重写了Animal类的eat方法。在Dog类的eat方法中,我们使用super关键字来调用父类的eat方法。

使用super调用父类构造函数

3. 调用父类无参构造函数

使用super关键字可以调用父类的构造函数。例如:

``` public class Animal { public Animal() { System.out.println("Animal is created."); } } public class Dog extends Animal { public Dog() { super(); System.out.println("Dog is created."); } } ```

在这个例子中,Dog类继承了Animal类,并且重写了Animal类的构造函数。在Dog类的构造函数中,我们使用super关键字来调用父类的构造函数。

4. 调用父类有参构造函数

使用super关键字可以调用父类的有参构造函数。例如:

``` public class Animal { protected String name; public Animal(String name) { this.name = name; System.out.println("Animal is created."); } } public class Dog extends Animal { public Dog(String name) { super(name); System.out.println("Dog is created."); } } ```

在这个例子中,Dog类继承了Animal类,并且重写了Animal类的构造函数。在Dog类的构造函数中,我们使用super关键字来调用父类的有参构造函数。

总结

在Java中,super关键字用于表示父类的引用。它可以用来访问父类的属性、方法和构造函数。使用super关键字可以让子类重写父类的方法,同时保留父类的行为。在使用super关键字时,需要注意父类的访问控制权限和构造函数的参数。

延伸阅读:

上一篇:java中super是什么意思? java this和super的区别

下一篇:jelly beans是什么意思? jar是什么意思?