继承的概念
继承其实是一种属性或行为的赠与,将多个事物的共有属性抽取出来放到一个独立的类中,这个独立的类与其他类产生了一种关系,就是继承关系。
继承的作用
继承的主要作用在于,在已有基础上继续进行功能的扩充。
提高代码的复用性
提高代码的维护性
为继承多态的前提条件之一
继承的实现
在Java中,继承用extends关键字来实现,语法:class 子类 extends 父类{}
class Person {
private String name;
private int age;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name=name;
}
public int getAge()
{
return age;
}
public void setAge(int age)
{
this.age=age;
}
}
class Student extends Person{
}
public class Test2{
public static void main(String[] args)
{
Student student=new Student();
student.setName("花花");
student.setAge(18);
System.out.println("姓名:"+student.getName()+" 年龄:"+student.getAge());
}
}
继承的特点
1.子类对象在进行实例化前首先调用父类构造方法,再调用子类构造方法实例化子类对象
2.Java只允许单继承不允许多继承(一个子类继承一个父类)可以多层继承
3.在进行继承的时候,子类会继承父类的所有结构(包括私有属性、构造方法、普通方法)
显示继承:所有非私有操作属于显示继承(可以直接调用)。
隐式继承:所有私有操作属于隐式继承(不可以直接调用,需要通过其它形式调用(get或者set))
class A{
public A()
{
System.out.println("1.A类的构造方法");
}
{
System.out.println("2.A类的构造块");
}
static{
System.out.println("3.A类的静态方法");
}
}
public class B extends A{
public B()
{
System.out.println("4.B类的构造方法");
}
{
System.out.println("5.B类的构造块");
}
static{
System.out.println("6.B类的静态方法");
}
public static void main(String[] args)
{
System.out.println("7.start......");
new B();
new B();
System.out.println("8.end.....");
}
}