java学习日记——super关键字

时间:2022-04-06 16:49:08

super关键字:

       在对象的内部使用,代表父类对象

       1,访问父类的属性

       使用  super.属性名

       2,访问父类的方法

       使用  super.方法名

样例代码:

父类:

package com.imooc;

public class Animal
{
public int age = 90;
public int weight;

public void bark()
{
System.out.println("I can bark");
}

}

子类:

package com.imooc;

public class Dog extends Animal
{
int age = 50;
public void bark()
{
System.out.println("I can bark loudly!");
}

public void test()
{
System.out.println(super.age);
System.out.println(age);
super.bark();
bark();
}
}

测试类:

package com.imooc;

public class Initial
{
public static void main(String[] args)
{
Dog test = new Dog();
//test.weight = 91;
//System.out.println("The dog's age is " + test.age + " years old");
//System.out.println("The dog's weight is " + test.weight + " kilogram");
//test.bark();
test.test();
}
}

运行结果:

java学习日记——super关键字

super的应用:

       1,子类的构造过程必须调用父类的构造方法

       2,如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调用父类无参的构造方法

       3,如果显示的调用父类的构造方法,必须在子类的构造方法的第一行

       4,如果子类中并没有显示的调用父类的构造方法,而父类又没有无参的构造方法,则编译出错