Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果静态内部类也是final,这意味着什么?_Java_Static_Inner Classes_Final - Fatal编程技术网

Java 如果静态内部类也是final,这意味着什么?

Java 如果静态内部类也是final,这意味着什么?,java,static,inner-classes,final,Java,Static,Inner Classes,Final,在上面的代码中,我有一个外部类,然后有一个带有非访问说明符“final”的静态嵌套类。这是否使该类类似于“常量”变量?否,它与常量变量不相似。这意味着您无法创建此嵌套类(internal)的子类。这类似于在顶级(即非嵌套)类中使用final关键字。否,它与常量变量不同。这意味着您无法创建此嵌套类(internal)的子类。这类似于在顶级(即非嵌套)类中使用final关键字。final在类中表示它们不能扩展。它与在顶级定义的类上拥有final没有什么不同 类上的final与变量上的final不同最

在上面的代码中,我有一个外部类,然后有一个带有非访问说明符“final”的静态嵌套类。这是否使该类类似于“常量”变量?

否,它与常量变量不相似。这意味着您无法创建此嵌套类(
internal
)的子类。这类似于在顶级(即非嵌套)类中使用final关键字。

否,它与常量变量不同。这意味着您无法创建此嵌套类(
internal
)的子类。这类似于在顶级(即非嵌套)类中使用final关键字。

final
在类中表示它们不能扩展。它与在顶级定义的类上拥有
final
没有什么不同


类上的
final
与变量上的
final
不同<代码>最终版根据您使用它的位置具有不同的含义。一般来说,它描述了一种不变性:

  • 在变量上,这意味着您不能在初始化后更改其值
  • 在方法上,这意味着一旦定义,就不能在子类中重写它
  • 在类上,这意味着类本身不能被子类化

  • 类的
final
表示它们不能扩展。它与在顶级定义的类上拥有
final
没有什么不同


类上的
final
与变量上的
final
不同<代码>最终版根据您使用它的位置具有不同的含义。一般来说,它描述了一种不变性:

  • 在变量上,这意味着您不能在初始化后更改其值
  • 在方法上,这意味着一旦定义,就不能在子类中重写它
  • 在类上,这意味着类本身不能被子类化

final for class意味着不能从该类派生。简单地说,这意味着
internal
不能扩展。不要将内部类与嵌套类混淆。可能相关:另外,用
final
修改的类是否嵌套也无关紧要。行为是相同的。类的final表示不能从该类派生。简单地说,这意味着
内部
不能扩展。不要将内部类与嵌套类混淆。可能相关:另外,用
final
修改的类是否嵌套也无关紧要。行为是一样的。
public class ClassWithInnerClass {

    int a = 10;

    public static void outer(){
        System.out.println("In method of outer class");

    }


        final static class Inner{

            int b = 20;

            public void innermethod(){
                System.out.println("In method of inner class");
                System.out.println("Inner class variable b = "+b);

            }
        }
}