详述java继承
继承是面向对象编程的三大特征之一,是一种基于已有类来创建新类的机制。由继承而得到的类称为子类(或派生类),被继承的类称为父类(或超类)。正是因为某些事物有许多相同的属性和动作,例如父亲和儿子都会有姓名、地址、身份证号等等,所以有许多重复,运用继承可以省去许多步骤。
需要有几点应该注意的:
1、Java中每个类只允许有一个父类。语法如下:class <子类> extends <父类>
Father.java
Son.java
2、Object类是所有类的直接父类或间接父类。
3、根据访问权限修饰符的不同,子类可以继承父类中某些成员变量和方法,提高了代码的重用性,子类也可以添加新的成员变量和方法 :
Father.java
public class Father {
String name;
public void eat()
{
System.out.println(name+"使用刀叉吃饭...");
}
}
Son.java
public class Son extends Father{
String id; //子类可以添加新的成员变量。
public static void main(String[] args) {
Son son=new Son();
son.name="Tom"; //子类继承父类的成员变量。
son.id="110";
son.eat(); //子类继承父类的方法。
System.out.println(son.id);
}
}
输出:
Tom使用刀叉吃饭…
110
4、如果类被final修饰,则该类不能被继承:
Father.java
Son.java
由于父类被final修饰,所以子类Son不能继承该类,所以报错。
5、Java中已有的类(诸如Void、String、Class、Scanner、System、8种基本数据类型对应包装类等类)已经被final修饰,所以这些类不能被继承。