Tag: 匿名类

Javareflection:如何检索匿名内部类?

我在另一个类( SomeClass )中有一个匿名内部类。 SomeClass.class.getClasses()和SomeClass.class.getDeclaredClasses()返回空数组。 我在Class’Javadocs中找不到一些关于此的提示。 可以通过某种方式使用reflection检索匿名内部类吗? 匿名内部类和普通内部类之间还有什么显着差异?

Java lambdas比匿名类慢20倍

我在这里看到了很多关于Java lambdas性能的问题,但是大多数问题都像“Lambdas稍快一点,但在使用闭包时变慢”或“预热与执行时间不同”或其他类似的东西。 但是,我在这里遇到了一件相当奇怪的事情。 考虑这个LeetCode问题 : 给定一组非重叠间隔,在间隔中插入新间隔(必要时合并)。 您可以假设间隔最初是根据其开始时间排序的。 这个问题被标记很难,所以我认为线性方法不是他们想要的。 所以我决定想出一种聪明的方法,将二进制搜索与对输入列表的修改结合起来。 现在问题在修改输入列表时并不是很清楚 – 它表示“插入”,即使签名需要返回对列表的引用,但是现在也没关系。 这是完整的代码,但只有前几行与此问题相关。 我在这里保留其余部分,以便任何人都可以尝试: public List insert(List intervals, Interval newInterval) { int start = Collections.binarySearch(intervals, newInterval, (i1, i2) -> Integer.compare(i1.start, i2.start)); int skip = start >= 0 ? start : -start – 1; int end = Collections.binarySearch(intervals.subList(skip, intervals.size()), new Interval(newInterval.end, 0), (i1, i2) -> Integer.compare(i1.start, […]

Java匿名类效率的含义

这两种做事方式之间的效率(例如执行时间,代码大小等)是否有任何差异? 下面是创建对象并且什么都不做的人为例子,但我的实际场景可能是创建新的线程,监听器等。假设以下代码片段在循环中发生,以便它可能有所作为。 使用匿名对象: void doSomething() { for (/* Assume some loop */) { final Object obj1, obj2; // some free variables IWorker anonymousWorker = new IWorker() { doWork() { // do things that refer to obj1 and obj2 } }; } } 首先定义一个类: void doSomething() { for (/* Assume some loop */) { Object obj1, […]