《java入门第一季》之面向对象(继承)

/*
	继承概述:
		把多个类中相同的内容给提取出来定义到一个类中。
		
	如何实现继承呢?	
		Java提供了关键字:extends
		
	格式:
		class 子类名 extends 父类名 {}
		
	好处:
		A:提高了代码的复用性
		B:提高了代码的维护性
		C:让类与类之间产生了关系,是多态的前提
	
	类与类产生了关系,其实也是继承的一个弊端:
		类的耦合性增强了。
		
		开发的原则:低耦合,高内聚。
		耦合:类与类的关系,你心情不好还要带着别人心情不好,损人不利己。
		内聚:就是自己完成某件事情的能力。我们要做一个独立有内涵的青年。
*/

//使用继承前
/*
class Student {
	public void eat() {
		System.out.println("吃饭");
	}
	
	public void sleep() {
		System.out.println("睡觉");
	}
}

class Teacher {
	public void eat() {
		System.out.println("吃饭");
	}
	
	public void sleep() {
		System.out.println("睡觉");
	}
}
*/

//使用继承后
class Person{
	public void eat(){
		System.out.println("吃饭");
	}
	public void sleep(){
		System.out.println("睡觉");
	}
}

class Student extends Person{}

class Teacher extends Person{}

class ExtendsDemo {
	public static void main(String[] args) {
		Student s = new Student();
		s.eat();
		s.sleep();
		System.out.println("-------------");
		
		Teacher t = new Teacher();
		t.eat();
		t.sleep();
	}
}


java中继承的特点——单继承性


/*
	Java中继承的特点:
		A:Java只支持单继承,不支持多继承。
			有些语言(C++)是支持多继承,格式:extends 类1,类2,...
		B:Java支持多层继承(继承体系)
*/

/*
class Father {}
class Mother {}
class Son exnteds Father {} //正确的
class Son extends Father,Mother {} // 错误的,在C++是正确的
*/

class GrandFather {
	public void show() {
		System.out.println("我是爷爷");
	}
}

class Father extends GrandFather {
	public void method(){
		System.out.println("我是老子");
	}
}

class Son extends Father {}

class ExtendsDemo2 {
	public static void main(String[] args) {
		Son s = new Son();
		s.method(); //使用父亲的
		s.show(); //使用爷爷的,这就里属于多层继承
	}
}


原文地址:https://www.cnblogs.com/wanghang/p/6299870.html