/**
* 匿名内部类最简单的理解方式
*
* 为什么用内部类?
* 1)某类中访问另外一个类中的私有类。2)某一个类中的对象依赖于另一个类的对象。
*
* @author xinglefly
* @version 1
*/
/*如人和心脏是一体的吧!心脏是依附人体而存在,你去看病的时候,你说心脏有点不好,不可能医生就把你心脏拿出来吧!
*抽象到程序当中:
*/
//为什么把心脏抽象成接口,因为每个人都有,心脏的健康状态不一样,抽象出来
interface Hear{
//跳动
void jump();
}
//定义Person类
class Personss{
String name;//名字
Personss(String name){
this.name=name;
}
public void seeDoctor(){//看医生去了
new Hear(){
public void jump(){
System.out.println(Personss.this.name+" 你的心脏不太好了,先做个心电图……");
}
}.jump();
}
}
//匿名内就是如此!
//回头再看这些专业术语就ok!
/*一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类,没有类名,根据多态,我们使用其父类名。
因其为局部内部类,那么局部内部类的所有限制都对其生效。
匿名内部类是唯一一种无构造方法类。
匿名内部类在编译的时候由系统自动起名Out$1.class。
如果一个对象编译时的类型是接口,那么其运行的类型为实现这个接口的类。
因匿名内部类无构造方法,所以其使用范围非常的有限。*/
/*回到java,别看一个简单的列子,体现了
* java的核心:
* 面向对象:以数据抽象为导向;
* 面向过程: 以业务逻辑为导向。
*
* java的4大机制中的:抽象,继承,封装都体现了。
*
* 得慢慢的融会贯通!希望同学们能打好java基础!我也正在做着同样的事情……加油了!希望都在快乐中学习!
*/
|