Java 继承解决了编程中的什么问题
Java 继承解决了编程中的什么问题 ?
Java继承产生的背景?
继承产生的原因:在一个项目中多个类具有很多相同的代码段,代码多了不仅仅容易出错,在需要系统升级的时候各个相同的代码段都需要修改,所以产生了“继承”。用下面的例子来解释我这段话。
//注意:都是public类型的类,这两个类不在一个文件中 //第一个类 public class Dog{ public int age; public String name; public void eat(){ System.out.println("开始吃饭!"); } public void Cry(){ System.out.println("汪汪!"); } } //第二个类 public class Cat{ public int age; public String name; public void eat(){ System.out.println("开始吃饭!"); } public void Cry(){ System.out.println("喵喵!"); } }
从代码中可以简单的看出,Dog类和Cat类,有很多相同的代码块,所以这里就可以用“继承”了。
用继承后修改的代码如下:
//此三个类也不在同一个文件 //第一个类(父类或基类) public class animals{ public int age; public String name; public void eat(){ System.out.println("开始吃饭!"); } public void Cry(){ System.out.println("叫声!"); } } //第二个类狗狗类 public class Dog extends animals{ public void Cry(){ System.out.println("汪汪!"); } } //第三个类猫猫类 public class Cat extends animals{ public void Cry(){ System.out.println("喵喵!"); } }
被继承的父类是狗狗类和猫猫类共同的代码,这样看是不是就好多了,重复的代码只写了一次通过extends关键字继承父类,每个类就都可以使用父类中的东西了,是不是对继承有了一些理解了。
子类继承了父类的属性和方法,子类特有的方法覆盖就行(这里先不解释覆盖)
注意:此案例没有写构造方法等,代码只是为了简单明了的解释关于继承的一些问题。