java学习日记——super关键字

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();
	}
}

运行结果:

super的应用:

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

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

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

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


你可能感兴趣的:(java,继承,生活,博客,Class)