继承
1. 继承的概念
在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关联体系。
在Java中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称为子类,现有类被称作父类或基类,子类会自动拥有父类所有可继承的属性和方法。
在程序中,如果想声明一个类继承另一个类,需要使用extends关键字
[修饰符] class 子类名 extends 父类名{
//代码
}
class Animal{
String name;
void speak(){
System.out.println("发出声音");
}
}
class Dog extends Animal{
void printName(){
//打印名字
System.out.println("名字是:" + name);
}
}
public class testji {
public static void main(String[] args) {
Dog dog = new Dog();
//子类会自动拥有父类所有可继承的属性和方法
dog.name = "二哈";
dog.printName(); //调用dog对象的printName()方法
dog.speak(); //调用Dog类继承来的speak()方法
}
}
2. 注意
2.1 Java中类只支持单继承,一个类只能有一个直接父类
2.2 多个类可以继承同一个父类
class A{
}
class B extends A{
}
class C extends B{
}
2.3 Java中允许多层继承
class A{
}
class B extends A{
}
class C extends B{
}//类C继承类B,类C是类B的子类,也是类A的子类
2.4 子类和父类是一种相对的概念
一个类是某个类的子类的同时,也可以是另一个类的父类
3.重写父类方法
在继承关系中,子类会自动继承父类中公共的方法,但有时在子类中需要对继承的方法进行一些修改,即对父类的方法进行重写
子类中重写的方法需要和父类被重写的方法具有相同的方法名、参数列表和返回值类型
class Animal{
void speak(){
System.out.println("发出声音");
}
}
class Dog extends Animal{
void speak(){