当前位置: 首页 > 面试题库 >

在Java中,this.method()和method()有什么区别?

龚铭
2023-03-14
问题内容

有调用任何区别this.method()method()(包括性能差)?


问题答案:

唯一重要的是您是否使用OuterClass.this.method()例如

class OuterClass {
    void method() { }

    class InnerClass {
        void method() {
            OuterClass.this.method(); // not the same as method().
        }
    }
 }


 类似资料:
  • 问题内容: 我只是想知道为什么我们通常在两个布尔之间使用逻辑OR 而不是按位OR ,尽管它们都运行良好。 我的意思是,请看以下内容: 我们可以代替使用吗?与和相同。 问题答案: 如果您使用和形式,而不是这些运算符的和形式,则Java不会费心地单独评估右手操作数。 这是您是否希望缩短评估时间的问题-在 大多数情况 下都是如此。 说明短路好处的一个好方法是考虑以下示例。 正如Jeremy和Peter提

  • 问题内容: 我在看一些模拟的OCJP问题。我遇到了一个非常令人困惑的语法。这里是: 为什么输出在和之间变化? 问题答案: 问题只是和您玩弄混乱的空格。 是通常的(不等于)比较。 另一方面: 最好写成如下形式: 因此,这是两个运算符。 首先反转。 然后将其分配回。 赋值运算符返回分配的值。因此,计算结果为true-这就是您要打印的内容。

  • 使用ehcache时,我注意到@Cacheable注释可以在类declaration或方法declaration之上使用,例如; 可缓存类: 可缓存方法: 如果@Cacheable位于一个类的顶部,那么您就不能给出chache的名称,但是如果您在一个方法的顶部声明,那么您可以给出在配置xml中声明的缓存的名称。我想我错过了一些东西,因为使用@Cacheable进行类删除对我来说似乎太难了。

  • 问题内容: 在Java中ArrayList和LinkedList有什么区别?何时使用哪一个? 问题答案: 并且是接口的两种不同的实现。用双向链表实现它。用动态调整大小的数组实现它。 与标准的链表和数组操作一样,各种方法将具有不同的算法运行时。 对于 是O(n)(平均n/4步) 是O(1) 是O(n)(平均为n/4步),但是当(index = 0 —LinkedList 是O(n)(平均n / 4步

  • 问题内容: 我一直认为Java 中的运算符用于验证其两个布尔操作数是否均为,并且该&运算符用于对两种整数类型进行按位运算。 最近我知道,也可以使用运算符来验证其两个布尔操作数是否均为,唯一的区别是即使LHS操作数为false,它也会检查RHS操作数。 Java中的运算符是否在内部重载?还是在这背后有其他概念? 问题答案: <-验证两个操作数 <-停止评估第一个操作数是否为false,因为结果为fa

  • (1)offer()和add()区别: 增加新项时,如果队列满了,add会抛出异常,offer返回false。 (2)poll()和remove()区别: poll()和remove()都是从队列中删除第一个元素,remove抛出异常,poll返回null。 (3)peek()和element()区别: peek()和element()用于查询队列头部元素,为空时element抛出异常,peek返