- 浏览: 45217 次
- 性别:
文章分类
最新评论
本文转自:
public class TestAnonymousInterClass{
public static void main(String args[]){
TestAnonymousInterClass test=new TestAnonymousInterClass();
test.show();
}
//在这个方法中构造了一个匿名内部类
private void show(){
Out anonyInter=new Out(){// 获取匿名内部类实例
void show(){//重写父类的方法
System.out.println("this is Anonymous InterClass showing.");
}
};
anonyInter.show();// 调用其方法
}
}
// 这是一个已经存在的类,匿名内部类通过重写其方法,将会获得另外的实现
class Out{
void show(){
System.out.println("this is Out showing.");
}
}
所以在这里看出,匿名内部类有了自己的实现。其实很简单,使用匿名内部类是因为我这地方需要有点什么特殊的实现,所以我就在这地方把具体实现也给了出来了。然后我就在这地方获取它的实例,调用它的方法。
接口的方式,只要把父类换成接口就行了,没必要给出代码了。
使用匿名内部类时我们不要忘了我们的目的,我们只是在这地方想对某个类有特殊的实现。而不要想得太多,在匿名内部编写其它的方法。在匿名内部类中编写的自己的方法是不可见的。此种做法是毫无意义的,当然一般也不会这么做。在这里只是告诉初学者对于匿名内部类不要想的太多,而要这么想:匿名内部类就是重写父类或接口的方法。
public class TestAnonymousInterClass{
public static void main(String args[]){
TestAnonymousInterClass test=new TestAnonymousInterClass();
test.show();
}
//在这个方法中构造了一个匿名内部类
private void show(){
Out anonyInter=new Out(){// 获取匿名内部类实例
void show(){//重写父类的方法
System.out.println("this is Anonymous InterClass showing.");
}
};
anonyInter.show();// 调用其方法
}
}
// 这是一个已经存在的类,匿名内部类通过重写其方法,将会获得另外的实现
class Out{
void show(){
System.out.println("this is Out showing.");
}
}
所以在这里看出,匿名内部类有了自己的实现。其实很简单,使用匿名内部类是因为我这地方需要有点什么特殊的实现,所以我就在这地方把具体实现也给了出来了。然后我就在这地方获取它的实例,调用它的方法。
接口的方式,只要把父类换成接口就行了,没必要给出代码了。
使用匿名内部类时我们不要忘了我们的目的,我们只是在这地方想对某个类有特殊的实现。而不要想得太多,在匿名内部编写其它的方法。在匿名内部类中编写的自己的方法是不可见的。此种做法是毫无意义的,当然一般也不会这么做。在这里只是告诉初学者对于匿名内部类不要想的太多,而要这么想:匿名内部类就是重写父类或接口的方法。
发表评论
-
【J2SE】Map.Entry 类使用简介
2012-05-10 11:12 519本文转自:http://www.cnblogs.com/guo ... -
【J2SE】Static Nested Class、Inner Class、Anonymous Inner Class
2012-05-05 11:58 0本文转自:http://blog.csdn.net/welco ... -
【J2SE】Anonymous Inner Class (匿名内部类)
2012-05-05 11:56 0本文转自:http://www.iteye ... -
【J2SE】生成者、消费者问题
2012-05-05 11:04 837本文转自:《Java JDK 实例宝典》 解决生产者消费者问 ... -
【J2SE】Java 运行时异常
2012-05-05 10:39 0本文转自:http://amyer.ite ... -
【J2SE】再谈线程:生产者与消费者
2012-05-04 23:36 0本文转自:http://www.blogjava.net/li ... -
【J2SE】Java线程:并发协作-生产者消费者模型
2012-05-04 23:34 0本文转自:http://lavasoft.blog.51cto ... -
【J2SE】线程7种状态的相互转换
2012-05-04 22:48 680本文转自:http://www.blogj ... -
【J2SE】详解java类的生命周期
2012-05-12 21:23 679本文转自:http://www.2cto.com/kf/20 ... -
Java文件操作大全
2012-05-02 13:29 0本文转自:http://www.blog ... -
【基础】Java Annotation详解
2012-05-02 11:50 0本文转自:http://www.blogjava.net/c ... -
【J2SE】Java JDBC数据库连接池总结
2012-05-03 23:21 891本文转自:http://www.blogj ... -
【基础】JAVA中String与StringBuffer的区别
2012-05-01 20:28 0String和StringBuffer的区别,网上资料可以说是 ... -
【J2SE】Java常见异常小结
2012-05-12 21:22 825本文重在Java中异常机制 ... -
【基础】Java异常处理及异常机制介绍
2012-05-01 19:54 0当出现程序无法控制的外部环境问题(用户提供的文件不存在,文件内 ... -
【基础】Java中finalize()
2012-05-01 19:39 0垃圾回收器要回收对象的时候,首先要调用这个类的finalize ... -
【基础】finally的一些测试
2012-05-01 16:37 0finally是在执行returen的中间执行。 pac ... -
【J2SE】Java之Path、CLASSPATH的概念解析
2012-05-03 23:17 791本文转自:http://blog.sin ... -
【J2SE】Java 反射机制简述
2012-05-03 23:19 668本文转自:http://zk1878.iteye.com/b ... -
【J2SE】Java中生成对象的4方式
2012-05-01 12:46 0本文转自:http://blog.sina.com.cn/s/ ...
相关推荐
zxing/zxing-j2se-1.7.jar包...包含类 com.google.zxing.StringsResourceTranslator.class com.google.zxing.client.j2se.BufferedImageLuminanceSource.class com.google.zxing.client.j2se.CommandLineRunner.class ...
- **内部类**:包括成员内部类、局部内部类、匿名内部类和静态内部类。 3. **异常处理** - **异常分类**:检查型异常和运行时异常的区别。 - **try-catch-finally语句块**:理解异常捕获和处理的机制。 - **...
8. **匿名内部类(Anonymous Inner Classes)**:J2SE5继续支持匿名内部类,可以在需要时快速定义一个类,尤其在处理接口回调时非常实用。 9. **NIO(New Input/Output)**:J2SE5引入了非阻塞I/O模型,提供了更高...
1. **private**: 只能在同一类内部访问。 2. **默认(无修饰符)**: 同一包内的类可以访问,不同包的子类不能访问。 3. **protected**: 同一包及所有子类可访问。 4. **public**: 所有类都可以访问。 **接口...
- **匿名内部类**:没有名称的内部类,常用于实现接口或抽象类的简单情况。 十四、正则表达式: - **模式匹配**:使用正则表达式进行字符串的匹配、查找、替换等操作。 - **预编译模式**:Pattern 类用于预编译正则...
J2SE_API、J2SE_API、J2SE_API、J2SE_API、J2SE_API、J2SE_API、J2SE_API
在创建匿名内部类或使用泛型时,Java 5.0引入了类型推断,编译器可以根据上下文自动推断出类型,简化了代码编写。 九、死锁检测(Deadlock Detection) J2SE 1.5的JVM提供了死锁检测工具,帮助开发者识别和解决多...
- Java 8引入的新特性,简化函数式编程,适用于单行函数体的匿名内部类。 以上只是J2SE学习的一部分,实际学习过程中,还应结合实际项目和练习,不断巩固和提升编程能力。通过阅读和分析提供的J2SE代码,你可以更...
- **Class类**:用于获取类的信息,动态创建对象和调用方法。 - **构造器与方法的反射调用**:理解和使用Constructor和Method类。 8. **泛型** - **类型参数**:理解泛型的概念,以及它在类、接口和方法中的应用...
- 主要通过`java.lang.reflect`包中的类实现,包括`Class`、`Method`、`Constructor`和`Field`等。 **6. 多线程**: - Java通过`Thread`类和`Runnable`接口支持多线程编程。 - 线程可以通过继承`Thread`类或实现`...
5. **第六章 面向对象编程(下)**:继续深化对面向对象的理解,包括接口、抽象类、访问修饰符、this关键字、super关键字的应用,以及内部类和匿名类的使用。 6. **第七章 常用类**:Java API包含了许多预定义的类,...
理解类(class)的概念,知道如何定义一个类,包括属性(fields)和方法(methods),是学习 Java 的核心。同时,要学会如何创建对象(实例化)并调用其方法。 3. **封装、继承和多态**:封装是将数据和操作数据的...
Java 2 Platform, Standard Edition(J2SE)是Java开发平台的一个重要组成部分,主要用于桌面应用和服务器端开发。中文版的J2SE API文档对于中国开发者来说尤其方便,它提供了全面的API参考,帮助理解并使用Java编程...
4. **多线程**:J2SE提供了对多线程的支持,`java.lang.Thread`类和`java.util.concurrent`包提供了创建和管理线程的接口和工具。源代码中可能有并发编程的例子,帮助理解线程同步、互斥和协作。 5. **I/O流**:...
6. **JDBC(Java Database Connectivity)**:J2SE 6的JDBC API提供了一套标准的接口和类,用于与各种数据库进行交互,包括连接管理、SQL执行、结果集处理等。这个版本的JDBC对连接池和数据源管理进行了优化,提升了...
8. **JVM 内部机制**:虽然不是 J2SE 文档的直接主题,但文档会提及虚拟机(JVM)的一些基本概念,如类加载、字节码执行等,这对于深入理解和优化 Java 应用性能非常有帮助。 9. **安全性**:Java 以其“写一次,...
在J2SE 1.6中,`AbstractAction`类是 Swing 库中的一个关键类,用于创建可重复使用的动作,常被用作按钮和其他交互组件的行为。`AbstractAnnotationValueVisitor6`则是在处理注解时,提供了一种访问注解值的抽象框架...
Java 2 Platform, Standard Edition (J2SE) 是 Java 平台的核心部分,它提供了用于开发和运行桌面应用、服务器应用以及嵌入式系统的环境。J2SE 的核心类库包含了丰富的 API,这些 API 覆盖了从基本数据类型到网络...
5. **反射**:通过Class对象动态访问类的信息,创建并操作类的对象。 6. **枚举与注解**:枚举类型的使用和注解(Annotation)在元编程中的应用。 7. **JNI(Java Native Interface)**:Java与本地代码(C/C++)...
- **改进的Java语言特性**:引入了匿名内部类的改进,允许在单行内声明并实例化一个类,提高了代码的简洁性。此外,增强了for-each循环,支持遍历数组和集合。 - **动态代理**:J2SE 6.0引入了动态代理,可以创建...