(1)继承
示例:


public class Test {
  public static void main(String[] args)
  {
 Student stu=new Student();//实例化对象
 stu.setName("张飒");
 stu.setAge(12);
 System.out.println("name="+stu.getName()+",age="+stu.getAge());
  }
}
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{



}


结果:name=张飒,age=12
总结:我们可以发现子类可以直接继承父类的操作,也就是实现代码的重用,并且子类最低可维持和父类相同的功能。


示例:子类进行扩充


public class Test {
  public static void main(String[] args)
  {
 Student stu=new Student();//实例化对象
 stu.setName("张飒");
 stu.setAge(12);
 stu.setSchool("加里敦大学");
 System.out.println("name="+stu.getName()+",age="+stu.getAge()+",scool="+stu.getSchool());
  }
}
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{

private String school;


public String getSchool() {
return school;
}


public void setSchool(String school) {
this.school = school;
}


}
结果:name=张飒,age=12,scool=加里敦大学


(2)继承的限制
1,子类对象在进行实例化对象之前,一定会首先实例化父类对象,默认调用父类的构造方法后,再调用子类的构造方法进行子类对象实例化。


public class Test {
  public static void main(String[] args)
  {
 new Student();//实例化对象

  }
}
class Person
{public Person()
{
System.out.println("父类构造方法");
}


}


class Student extends Person{
public Student()
{
System.out.println("子类");
}


}
结果:
父类构造方法
子类
总结:子类对象的实例化一定会同时实例化父类的对象,


2,java中只允许单继承,不允许多继承。可以多层继承
eg:多层继承:class B extends A
           class C extends B
3, 继承的时候,子类会继承父类的所有结构。所有的非私有操作属于显示继承(可直接调用),所有的私有操作属于隐士继承(通过其它形式进行调用 ,如setter,getter)。
4 子类所能使用的只能是父类的public操作,所有的private操作无法直接使用所以称为隐士继承。

本文转载:CSDN博客