匿名类,不理解,求答疑 java类 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给你个代码,应该能看懂吧interface MyInter{ void testA();}class Outer{ int x=1; void printOut(){ /* //定义一个局部内部类,实现接口 class Loacl implements MyInter{ public void testA(){ System.out.println("局部内部类实现了接口,重写了接口的方法"); } } //创建一个局部内部类对象.并使用局部内部类的方法. new Loacl().testA(); */ /* 下面使用匿名内部类简化书写... 注意,这不是new 接口, 而是创建了一个接口的实现类,不想给该实现类起名字... new 操作符会返回一个对象,这个对象其实是接口的实现类对象., 并直接用new 操作符返回的接口的实现类的对象的引用,调用了testA 方法. 纯粹是为了简化书写而出现的. */ new MyInter(){ public void testA(){ System.out.println("匿名内部类..."); } }.testA(); }} 恩,这个好理解, new MyInter(){ public void testA(){ System.out.println("匿名内部类..."); } }.testA();MyInter()是借口, 而{ }里面的内容是这个匿名类,并且这个匿名类里面实现了借口MyInter()的方法testA(),我感觉这才是实实在在的内部匿名类, 另外还有个问题就是,匿名内部类貌似只能在方法体力里面定义,是不是这样的? 方法体外也可以定义匿名类,定义到属性上即可。例如private MyInter myclass=new MyInter(){ ... }; return new A(){ //....类体}表示有一个匿名内部类继承了类A。该匿名内部类是A的子类,A不是该匿名内部类的类名啊。 求个正则表达式 怎样清空一个ACCESS表 在线揭帖:使用类封装操作后就执行出问题了 谁能告诉我同步与异步的区别?? Tomcat里可不可以放php、asp页面? 关于保存bufferedimage为gif文件的问题 初学,问一个问题:java支持这样的数组格式不? abc["name"]="ddd"; JPanel中的控件(JLabel)的焦点的获得顺序可以设置吗? requestFocus() 500分跪求各位高手了!!!(72小时结帖) 关于socket的I/O问题!!!急!!! 新手问问 java中方法重写和方法隐藏到底是怎么区别 Java内部类问题
void testA();
}
class Outer{
int x=1;
void printOut(){
/*
//定义一个局部内部类,实现接口
class Loacl implements MyInter{
public void testA(){
System.out.println("局部内部类实现了接口,重写了接口的方法");
}
}
//创建一个局部内部类对象.并使用局部内部类的方法.
new Loacl().testA();
*/
/*
下面使用匿名内部类简化书写... 注意,这不是new 接口, 而是创建了一个接口的实现类,不想给该实现类起名字...
new 操作符会返回一个对象,这个对象其实是接口的实现类对象.,
并直接用new 操作符返回的接口的实现类的对象的引用,调用了testA 方法.
纯粹是为了简化书写而出现的.
*/
new MyInter(){
public void testA(){
System.out.println("匿名内部类...");
}
}.testA();
}
}
new MyInter(){
public void testA(){
System.out.println("匿名内部类...");
}
}.testA();
MyInter()是借口, 而{ }里面的内容是这个匿名类,并且这个匿名类里面实现了借口MyInter()的方法testA(),
我感觉这才是实实在在的内部匿名类, 另外还有个问题就是,匿名内部类貌似只能在方法体力里面定义,是不是这样的?
例如
private MyInter myclass=new MyInter(){ ... };
//....类体
}
表示有一个匿名内部类继承了类A。该匿名内部类是A的子类,A不是该匿名内部类的类名啊。