Java 面向对象 之 继承

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();

*/

http://www.verejava.com/?id=16992791427944

猜你喜欢

转载自blog.csdn.net/verejava/article/details/80520244