欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java基础第9讲--面向对象之继承

程序员文章站 2022-05-28 13:35:42
...

1、生活中的继承有哪些?

继承,就是儿子继承父亲,父亲有的儿子也有,儿子有的父亲却可能没有。

1.1、什么是继承?

Java中使用extends关键字实现类的加载机制称之为继承,子类自动拥有了基类(也叫父类,superclass)的所有成员,即成员变量和成员方法

1.2、继承的好处是什么?

引入继承可以减少重复的代码量,提高代码和开发效率

1.3、继承中的成员访问限制是什么?

如果父类中变量定义成了private私有变量,则在子类中是不可以调用的,其只能在父类的方法中调用,子类和其他类都不可以。

1.4、Ps

  • Java只支持单继承,不支持多继承,即:一个子类只能有一个基类(父类),但是一个基类可以有多个子类
  • 子类对象包含父类对象
  • 静态方法是不可以继承的

1.5、示例:自行车和公路赛

自行车类

public class Bike {

	public int wheels = 2; //*数量
	
	public void run(){
		System.out.println("自行车都能跑");
	}
}


变速自行车类

public class RaceBike extends Bike {

	public int gear = 2; // 齿轮个数

	public void speedUp() {
		System.out.println("变速自行车可以加速");
	}

	public void speedDown() {
		System.out.println("变速自行车可以减速");
	}
}



测试类

public class Test {

	public static void main(String[] args) {
		RaceBike bike = new RaceBike();
		int wheels = bike.wheels; //获取父类的成员变量wheels
		int gears = bike.gear;
		System.out.println("变速车的*数量是:" + wheels);
		System.out.println("变速车的齿轮数是:" +  gears);
		bike.run(); //调用父类的跑的方法
		bike.speedUp();
		bike.speedDown();
	}
}



运行结果:

Java基础第9讲--面向对象之继承


2、Super关键字

Super关键字,可以用来子类调用父类的成员用,它包括调用父类的public、protected修饰的变量方法。

2.1、使用Super关键字的注意事项

  • 调用父类的方法:super.父类的方法
  • 同时super也可以调用父类的构造方法,但是父类中构造方法用private修饰时,不能有子类去继承
  • 子类可以没有构造方法,他会自动调用父类的构造方法
  • 在子类中可以调用父类的构造方法,super必须放在子类构造方法的首句