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

Java类中变量影子的用途是什么?

陆沈浪
2023-03-14
问题内容

我正在阅读我的Deitel《 Java How to Program》一书,并遇到了“ 阴影 ”一词。如果允许阴影,那么Java类中有什么情况或目的?

例:

public class Foo {

    int x = 5;

    public void useField() {
        System.out.println(this.x);
    }
    public void useLocal() {
        int x = 10;
        System.out.println(x);
    }
}

问题答案:

阴影的基本目的是使本地代码与周围的类分离。如果不可用,请考虑以下情况。

API中的Class Foo已发布。在代码中将其子类化,并在子类中使用名为bar的变量。然后,Foo发布更新,并在其类中添加一个称为Bar的受保护变量。

现在,由于您无法预料的冲突,您的课程将无法运行。

但是,请不要故意这样做。仅当您真的不在乎示波器之外发生的情况时,才进行此操作。



 类似资料:
  • 问题内容: 我正在读一本书,遇到过Java中的“影子变量”一词,但没有描述。最终,这些变量是做什么用的,以及如何实现? 问题答案: 除了提供我自己的描述之外,我可能会要求您例如在以下位置阅读它:http : //en.wikipedia.org/wiki/Variable_shadowing。了解变量的阴影后,建议您继续阅读有关覆盖/阴影方法和可见性的一般知识,以全面了解此类术语。 实际上,由于该

  • 问题内容: 如果将变量声明为,那么我可以从任意位置访问它。我还知道,静态成员由类的所有实例共享,并且不在每个实例中重新分配。 声明变量与声明变量有什么不同吗? 在这两种情况下,都不能以任何其他类或从任何其他类访问它。 将变量声明为静态是否会赋予它其他特殊属性? 问题答案: 当然,可以将其作为,但只能从定义它的类内部进行访问-这是因为它被定义为。 或变量通常用于常量。例如,许多人不喜欢在代码中“硬编

  • 本文向大家介绍在PowerShell中$ error变量的用途是什么?,包括了在PowerShell中$ error变量的用途是什么?的使用技巧和注意事项,需要的朋友参考一下 PowerShell中的错误变量用于查看当前PowerShell会话中生成的错误。我们可以说$Error变量是存储所有错误的容器,并且最新的错误将首先显示。对于下面的示例,我们将$Errorview设置为Category视图

  • 问题内容: 我正在学习Java,只是发现接口可以包含公共静态字段和最终字段。到目前为止,我还没有看到这些示例。这些接口常量有哪些用例,我可以在Java标准库中看到吗? 问题答案: 将静态成员放入接口(并实现该接口)是一种不好的做法,甚至还有一个名称,即Constant Interface Antipattern,请参见Effective Java,第17项: 恒定接口模式是对接口的不良使用。类内部

  • 问题内容: 此代码中的 是什么意思? 问题答案: 在Python中有4种主要的常规用法: 在交互式解释器会话中保存上次执行的表达式的结果。此先例是由标准CPython解释器设定的,其他解释器也纷纷效仿 在i18n中进行翻译查找( 例如,参见 gettext文档),如代码所示: 作为通用“一次性”的变量名指示函数结果的一部分被故意忽略(在概念上,它被丢弃。),如类似的代码: 。 作为函数定义的一部分

  • 本文向大家介绍C ++中的变量和变量类型是什么?,包括了C ++中的变量和变量类型是什么?的使用技巧和注意事项,需要的朋友参考一下 变量为我们提供了程序可以操纵的命名存储。C ++中的每个变量都有一个特定的类型,该类型确定变量的内存大小和布局。可以存储在该内存中的值的范围;以及可以应用于该变量的一组操作。一个非常简单的变量示例是- 在这里,我们有一个变量my_val,类型为int(integer)