anonymous-class相关内容
我以为我知道答案,但是我在一小时左右的搜索后找不到任何确认。 在此代码中: public class Outer { //其他代码 private void method1() { final SomeObject obj1 = new SomeObject(...); final SomeObject obj2 = new SomeObject(...); s
..
匿名类和静态内部类的最佳实践(设计和性能)是什么? 我个人认为静态内部类提供了更好的封装,并且应该提供更好的性能,因为他们无法访问类外的最终变量。但是我从来没有真正质疑过这个问题。 我发现了一篇关于此事的帖子,但我觉得它实际上没有回答这个问题,只是人们个人的想法。 解决方案 内部类(静态或非静态)与其封闭类的字段和方法具有完全相同的匿名类访问权限,静态内部类(实际上称为嵌套类)
..
我在网上进行了一项小型研究并审查了该网站上的相关主题,但答案是矛盾的:有些人说这是不可能的,有些人说这是可能的,但很危险。 目标是将匿名类的对象作为RMI方法的参数传递。由于RMI要求,此类必须是可序列化的。这没有问题,很容易使类Serializable。 但我们知道内部类的实例持有对外部类的引用(而匿名类是内部类) 。因此,当我们序列化内部类的实例时,外部类的实例被序列化以及字段。这
..
在阅读问题的答案时出现了问题 - 如何做我在java中加入两个列表。此答案提供了解决方案 列表与LT;字符串> newList = new ArrayList(){{addAll(listOne);的addAll(listTwo); }}; 阅读评论时,用户表示这些评论是邪恶的,不应该用于制作。 我想知道使用它有什么害处?为什么在生产中使用
..
RadioGroup radioGroup =(RadioGroup)findViewById(R.id.orientation); radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { public void onCheckedChanged(RadioGroup group,i
..
如何从匿名类的方法中访问实例变量? class Tester扩展了JFrame { 私有JButton按钮; 私人JLabel标签; //..更多 public Tester(){ function(); // CALL FUNCTION } public void function(){ Runnable r = new Runnable(){ @Over
..
考虑以下代码: for(int i = 0; i currentList = new ArrayList(){{ add(i); }}; //用currentList做一些事情 } Java如何处理 currentList 的类? 对于200个对象中的每一个,
..
正确有用地记录匿名对象功能的最佳方法是什么?我正在使用Soar进行一些编程(API 此处),并且代码看起来像这样: / ** * * @return处理程序 * / public static RhsFunctionInterface functionBlah(){ return new Kernel.RhsFunctionInterface(){ / ** * bl
..
除了使用反射来访问匿名内部类的成员之外还有什么方法吗? 解决方案 匿名内部类有类型但没有名称。 您可以访问未由指定超类型定义的字段。但是,一旦分配给命名类型变量,接口就会丢失。 显然,您可以从内部类本身访问字段。添加代码的一种方法是通过实例初始化器: final AtomicInteger y = new AtomicInteger(); new Runnable(
..
我想我理解匿名课程的基础知识,但我想澄清一些事情。当我有这样的语法时, 类A { 类AnonymousClass1 Implements ActionListener {} } class A { public A() { JButton btn = new JButton(); btn.addActionListener(new ActionListener()
..
我希望能够在对象运行初始化程序之前在运行时实现一个方法。这将允许我设置初始化期间使用的字段。 以下是一个例子: A类{ public A(){ initialize(); } public void initialize(){} } B类扩展A { 公共字符串消息; { System.out.println(message); } } 公共类Mai
..
我有一个如下定义的示例类: public class FooBar { void method1 (Foo foo){//应该被覆盖 ... } } 稍后,当我尝试这个时: FooBar fooBar = new FooBar(){ public String name = null; @Override void method1(Fo
..
我最近做了一个编程任务,要求我们在代码中实现一个由UML图指定的程序。有一次,该图指定我必须创建一个显示计数(从1开始)的匿名JButton,并在每次单击时递减。 JButton及其ActionListener都必须是匿名的。 我想出了以下解决方案: public static void main(String [] args){ JFrame f = new JFrame(“fr
..
有一个内部问题,为什么java匿名类不能同时实现和子类?或者只是因为语法? 解决方案 在那里有一个内部问题为什么java匿名类不能同时实现和子类? 我认为由于语法原因它是99%。类型参数甚至支持交叉点类型( )所以我认为这样的功能不会引入任何矛盾或复杂情况。 像 new(InterfaceX& InterfaceY)(
..
关于匿名类的文档说明 匿名类无法访问未被声明为final或者有效最终的封闭范围 中的局部变量。 我不明白变量是“有效最终”是什么意思。有人可以提供一个例子来帮助我理解这意味着什么吗? 解决方案 有效的最终意味着它在获得初始值后永远不会改变值。 一个简单的例子: public void myMethod(){ int a = 1; System.out.pr
..
我实例化了一个匿名类的对象,我在其中添加了一个新方法。 日期日期=新日期(){ public void someMethod(){} } 我想知道是否有可能从外面以某种方式调用此方法类似于: date.someMethod(); 解决方案 好问题。答案是否定的。您无法直接调用 date.someMethod(); 让我们先了解这是什么。
..
我遇到了一个局部变量访问内部类的问题需要被声明为final。它来自方法createGrids() - >“ squares [i] [j] = 0; ”我是一个需要被声明为final的局部变量。我不知道为什么,我在字段中添加了final,但它也没有用。 import java.util。数组列表; import java.util.Random; //省略
..
以下是一个示例 JPanel panel = new JPanel(){ @Override protected void paintComponent(Graphics g){ // do stuff } @Override public Dimension getPreferredSize(){ // do stuff } }; 这只是一个
..
此自行回答的问题受到变量'snackbar'可能尚未初始化。我觉得有更多细节可以更好地与特定问题分开添加。 为什么下面的代码不能被编译? public class示例{ public static void main(String [] args){ final Runnable example = new Runnable( ){ @Override public voi
..
我想写一个JUnit测试来验证下面的代码使用BufferedInputStream: public static final FilterFactory BZIP2_FACTORY = new FilterFactory(){ public InputStream makeFilter(InputStream in){ //为清晰起见,删除了许多其他代码 BufferedInputS
..