http://www.verejava.com/?id=16992791427944
/**
知识点: 继承的基本概念和实现
1. 什么是继承
2. 继承的实现
3. 继承的限制
java 不运行多继承, 也就是只能继承一个类, 但是其父类可以再继承一个类
继承具有传递性
题目:学生继承了人的特征
思路:
1. 抽象出类: 学生(Student), 人(Person)
2. 找出类之间的关系: 学生 继承 人 Student extends Person
3. 找出属性: 人的特征(名字name,年龄age)
4. 找出方法: 人的动作(说话say)
*/
public class Inheritence
{
public static void main(String[] args)
{
//实例化一个 学生
Student s=new Student();
//给学生赋值名字和年龄
s.name="李阳";
s.age=22;
//用带参数的构造方法实例化 子类 Student
Student s2=new Student("张涛",23);
}
}
class UFO //外星人类
{
public UFO()
{
System.out.println("外星人实例化");
}
}
class Person extends UFO
{
protected String name;
protected int age;
public Person()
{
System.out.println("父类 Person 实例化");
}
public Person(String name,int age)
{
System.out.println(name+" 的父类 Person 实例化");
}
public void say()
{
System.out.println("说话");
}
}
/**
Person 叫Student的父类 或 超类
Student 叫 Person 的子类
extends 表示继承关系
*/
class Student extends Person
{
public Student()
{
super();
System.out.println("子类 Student 实例化");
}
public Student(String name,int age)
{
super(name,age);
System.out.println("子类 Student "+name+" 实例化");
}
}
/**
注意:
1. 子类不能访问父类的私有private 的属性
2. 子类可以访问父类的保护protected,public 属性
3. 当用不带参数的构造方法实例化子类的时候,先调用父类的不带参数的构造方法
实例化父类以后, 在实例化子类.(经典语录: 没有父类就没有子类)
4. 当用带参数的构造方法实例化子类时, 也默认先调用父类的不带参数的构造放法
后,再调用子类的带参数的构造方法
5. 如果要让父类带参数的构造方法调用, 必须用super 父类指针显示调用父类的构造方法
并且super 要在子类的构造方法的第一句。
6. 当不带参数的子类实例化时, 系统隐藏执行了 super();
*/