1.接口
·普通类:只有具体实现
•抽象类:具体实现和规范(抽象方法)都有!
•接口:只有规范!(自己无法写方法~专业的约束!约束和实现分离:面向接口编程)
接口就是规范,定义的是一组规则,体现了现实世界中 “如果你是…则必须能…”的思想。如果你是天使,
则必须能飞。如果你是汽车,则必须能跑。如果你好人,则必须干掉坏人;如果你是坏人,则必须欺负好人。
•接口的本质是契约,就像我们人间的法律一样。制定好后大家都遵守。
OO的精髓,是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计模式都只针对具备了抽象
能力的语言(比如c++、java、C#等) ,就是因为设计模式所研究的,实际上就是如何合理的去抽象。
声明类的关键字是class,声明接口的关键字是interface。
接口就是把class换成interface,然后接口中的方法可以直接写返回值类型加名字,也可以有参数,他会自动隐藏public abstract 。
作用:
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.
内部类可以获得外部类的私有属性,私有方法。
2.
但是一旦在内部类加上static这个id就拿不到了,因为static要执行,编译的时候先类初始化后,才轮到对象初始化。静态内部类无法直接访问外部类。如需访问都需要加上static。
3.
4.