码迷,mamicode.com
首页 > 其他好文 > 详细

4.37 使用继承学生和老师案例

时间:2015-09-15 09:31:48      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

/*
学生案例和老师案例讲解

学生:
	成员变量;姓名,年龄
	构造方法:无参,带参
	成员方法:getXxx()/setXxx()
老师:
	成员变量;姓名,年龄
	构造方法:无参,带参
	成员方法:getXxx()/setXxx()
*/
//定义学生类
class Student {
	// 姓名
	private String name;
	// 年龄
	private int age;

	public Student() {
	}

	public Student(String name, int age) {
		this.name = name;
		this.age = 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 Teacher {
	// 姓名
	private String name;
	// 年龄
	private int age;

	public Teacher() {
	}

	public Teacher(String name, int age) {
		this.name = name;
		this.age = 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 ExtendsTest3 {
	public static void main(String[] args) {
		// 创建学生对象并测试
		// 方式1
		Student s1 = new Student();
		s1.setName("程又青");
		s1.setAge(27);
		System.out.println(s1.getName() + "---" + s1.getAge());

		// 方式2
		Student s2 = new Student("程又青", 27);
		System.out.println(s2.getName() + "---" + s2.getAge());

	}
}

使用继承改进:

/*
学生案例和老师案例讲解

学生:
	成员变量;姓名,年龄
	构造方法:无参,带参
	成员方法:getXxx()/setXxx()
老师:
	成员变量;姓名,年龄
	构造方法:无参,带参
	成员方法:getXxx()/setXxx()
	
看上面两个类的成员,发现了很多相同的东西,所以我们就考虑抽取一个共性的类:
人:
	成员变量;姓名,年龄
	构造方法:无参,带参
	成员方法:getXxx()/setXxx()
	
	学生 继承 人
	老师 继承 人
*/
//定义人类
class Person {
	// 姓名
	private String name;
	// 年龄
	private int age;

	public Person() {
	}

	public Person(String name, int age) { // "林青霞",27
		this.name = name;
		this.age = 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 Student() {
	}

	public Student(String name, int age) { // "林青霞",27
		// this.name = name;
		// this.age = age;
		super(name, age);
	}
}

// 定义老师类
class Teacher extends Person {

}

class ExtendsTest4 {
	public static void main(String[] args) {
		// 创建学生对象并测试
		// 方式1
		Student s1 = new Student();
		s1.setName("李大仁");
		s1.setAge(27);
		System.out.println(s1.getName() + "---" + s1.getAge());

		// 方式2
		Student s2 = new Student("李大仁", 27);
		System.out.println(s2.getName() + "---" + s2.getAge());

	}
}


4.37 使用继承学生和老师案例

标签:

原文地址:http://my.oschina.net/u/2001589/blog/506126

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!