day06笔记(2021-09-28)-OOP:面向对象+封装+继承+多态

面向对象

实际开发,半面向对象,半面向过程,结合起来实现具体的代码。

面向对象的三大特征

封装、继承、多态、(抽象)

封装 encapsulation

在这里插入图片描述

public String getName() {
		return name;
	}
	
	public void setName(String name) {
		//name  参数
		//this.name  属性,成员变量  this代表当前类
		this.name = name;
	}
public Double getMoney() {
		return money;
	}
	public void setMoney(Double money) {
		this.money = money;
	}
	
	
## 利用eclipse 自动生成get和set方法,以及toString()方法![在这里插入图片描述](https://img-blog.csdnimg.cn/c26adf1d965d4edb81523140a1a01af6.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/53cf255e4045445cac378f991ab3771b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/ac529db57e3a4ca1806a39867159843f.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
## 自动生成
![在这里插入图片描述](https://img-blog.csdnimg.cn/03e3e70527df4834a6b8077648f94a00.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
错误![在这里插入图片描述](https://img-blog.csdnimg.cn/96eec624d9eb4ced8b0d8965e35b4dd7.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
正确![在这里插入图片描述](https://img-blog.csdnimg.cn/064c5bc799674971bbdd516a6575a195.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/73aa2b7d83ad4fcab3e9b3840d2f3865.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/577702edc1d74b90a547d3ae1330f5c3.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/bc4f70ea99e74285bd3d51b619891619.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/60139824aa5847b8b0eb2c5832e0c416.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)



## 继承 inheritance
##  为什么需要继承
好处是,可以减少相同的代码,减少冗余



##  接口的实现方式
需求:
动物

![在这里插入图片描述](https://img-blog.csdnimg.cn/45fbc8d09d3b45ba8cd5be20917f691f.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)






##  多态 polymorphism


![在这里插入图片描述](https://img-blog.csdnimg.cn/063131ca389a4c78a169b8bd46c04620.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaml1dGVtZWxpcHU=,size_20,color_FFFFFF,t_70,g_se,x_16)
##  小结
3)面向对象概念:三大特征:
	1.封装
	2.继承:两种实现方式
	a)extends  继承类
	b)implements  实现接口
	3.多态
4)封装具体的实现
	a.创建实体类
	b.一堆私有属性,外部不能直接访问    private String name;
	c.一堆的get和set方法来调用    getName()setName();
	d.一堆业务的方法(行为)     eat()		play()...
5)类的继承
	a.java单继承,就像继承多个类?多级继承,爷爷-爸爸-我,没有C语言多继承灵活,但安全,不易出错,出错好找到问题的所在类
	b.把公用的代码就写在父类中
	c.
	d.子类调用     Fruit水果是父类,Apple是子类,怎么调用父类方法
		d1)声明他们之间的关系,继承关系
		d2)
	好处:
	6)接口的实现
		a)定义接口,
		b)实现接口
		c)
		好处:规范代码,实现向后兼容,程序就方便扩展         JCBC
		主流开发方式提倡,面向接口开发!
	7)类和接口本质的差异
		a.类使用class修饰,接口使用interface修饰
		b.类中内容都必须实现,接口中没有实现的
		c.类是可以被extends继承的,任何类都可以有子类 ,接口实现接口(多级)
		d.类干活,接口不干活



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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值