java从零开始 day20

1.接口

·普通类:只有具体实现
•抽象类:具体实现和规范(抽象方法)都有!
•接口:只有规范!(自己无法写方法~专业的约束!约束和实现分离:面向接口编程)


接口就是规范,定义的是一组规则,体现了现实世界中 “如果你是…则必须能…”的思想。如果你是天使,
则必须能飞。如果你是汽车,则必须能跑。如果你好人,则必须干掉坏人;如果你是坏人,则必须欺负好人。
•接口的本质是契约,就像我们人间的法律一样。制定好后大家都遵守。
OO的精髓,是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计模式都只针对具备了抽象
能力的语言(比如c++、java、C#等) ,就是因为设计模式所研究的,实际上就是如何合理的去抽象。

声明类的关键字是class,声明接口的关键字是interface。

接口就是把class换成interface,然后接口中的方法可以直接写返回值类型加名字,也可以有参数,他会自动隐藏public abstract 。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBDdnbnmoTov5vmraXorrDlvZU,size_20,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBDdnbnmoTov5vmraXorrDlvZU,size_20,color_FFFFFF,t_70,g_se,x_16 


作用:
1.约束
2•定义一些方法,让不同的人实现(一个任务空着,分给好几个人去做)
3.public abstract(方法)
4. public static final(常量;int xx=xx)
5• 接口不能被实例化~,接口中没有构造方法~
6• implements可以实现多个接口
7.必须要重写接口中的方法~

2.内部类

•内部类就是在一个类的内部在定义一个类,比如,A类中定义一个B类,那么B类相对A类来说就称为内部类,而A类相对B类来说就是外部类了。
• 1. 成员内部类
•2. 静态内部类
•3. 局部内部类
• 4. 匿名内部类

1.

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBDdnbnmoTov5vmraXorrDlvZU,size_20,color_FFFFFF,t_70,g_se,x_16

 内部类可以获得外部类的私有属性,私有方法。

2.

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBDdnbnmoTov5vmraXorrDlvZU,size_20,color_FFFFFF,t_70,g_se,x_16 

但是一旦在内部类加上static这个id就拿不到了,因为static要执行,编译的时候先类初始化后,才轮到对象初始化。静态内部类无法直接访问外部类。如需访问都需要加上static。

3.

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBDdnbnmoTov5vmraXorrDlvZU,size_20,color_FFFFFF,t_70,g_se,x_16

4.

 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBDdnbnmoTov5vmraXorrDlvZU,size_20,color_FFFFFF,t_70,g_se,x_16 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBDdnbnmoTov5vmraXorrDlvZU,size_20,color_FFFFFF,t_70,g_se,x_16 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值