面向对象

继承

继承的格式;

  • 通过extends关键字可以实现类与类的继承
    class 子类类名 extends 父类类名 {}
    被继承的这个类称为父类,基类或者超类
    继承的这个类称为子类或者派生类

继承的特点:
1.通过extends关键字实现,类与类之间建立了联系
违背了高内聚,低耦合的原则
2.继承的本质就是对多个类的共性的代码的抽取
3.类是对多个对象的抽象,继承是对某一批类的抽象。
4.继承是一把双刃剑,慎用

继承的特点:
1.通过extends关键字实现,类与类之间建立了联系
违背了高内聚,低耦合的原则
2.继承的本质就是对多个类的共性的代码的抽取
3.类是对多个对象的抽象,继承是对某一批类的抽象。
4.继承是一把双刃剑,慎用

设计原则;
高内聚,低耦合
对扩展开放,多修改关闭
面向对象思想

如何使用继承?
	1.一般都是在写完代码之后,观察发现你的代码出现了重复,这个时候抽取重复代码到父类中即可
	2.当设计某个类非常复杂的时候,可以使用继承

继承的注意事项:
	1.单一继承性
	2.支持多层继承
	3.如果父类使用priavate修饰成员,子类不能够继承
	4.如果一个子类继承了父类的所有方法,还可以有自己的方法
	5.当子类属性和父类属性重名的时候,子类会覆盖父类继承的同名属性
	6.子类不会继承父类的构造方法
	
使用继承的步骤;
	1.先书写所有的子类
	2.观察多个子类是否存在共性代码
	3.将共性代码抽取到父类中
	4.子类继承父类,将共性代码删除
	5.验证是否满足 A is a B关系 
	
	A is a B 继承
	A has a B 组合  : A类有B类的控制权
在这里插入代码片

package com.extendsdemo;

import javax.swing.JFrame;

public class ExtendsDemo01 {
public static void main(String[] args) {
PrimaryStudent ps = new PrimaryStudent();

	XyrFrame frame = new XyrFrame();
	frame.setSize(100, 200);
	frame.setLocationRelativeTo(null);
	frame.setTitle("植物大战僵尸");
	frame.setVisible(true);
	
	ps.playMobile(); 
}

}

class Dog {

}

class Teacher {
Dog dog;
}

class XyrFrame extends JFrame {
}

class Person extends Object {

}

class Student extends Person {
public Student() {}

String name = "World";
int age;
private double money;
double height;

public void payMoney(double money) {
	this.money = money;
}

}

class PrimaryStudent extends Student {
public PrimaryStudent() {}
String name = “Hello”;
public void playMobile () {
System.out.println(“MiddleStudent.playMobile()” + name);
}
}

class MiddleStudent extends Student {
public void playGame() {
System.out.println(“MiddleStudent.playGame()”);
}
}

class BigStudent extends Student{
public void sleep() {
System.out.println(“BigStudent.sleep()”);
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值