java静态内部类理解

时间:2023-03-08 15:39:37

在Java世界里,经常被提到静态这个概念,static作为静态成员变量和成员函数的修饰符,意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改值为该类的其它所有实例所见。

1.静态内部类的作用就是为了给外部类单独使用,所以无需再创建一个额外的类

2.静态内部类只能访问静态的成员和方法,不能访问非静态的

3.静态内部类可以直接实例化,如Inner i=new Inner();,而非静态内部类则需要外部类的对象去创建内部类实例。

静态内部类的特点就个静态成员已经静态方法类似。

创建静态内部类对象

package org.sunyard.wu;

public class Demo1 {
public static void main(String[] args) {
System.out.println(A.aString);

}
public static class A{
public static String aString="1111";
}
}

创建非静态内部类对象

package org.sunyard.wu;

public class Demo1 {
public static void main(String[] args) {
Demo1 demo1=new Demo1();
A a=demo1. new A();
System.out.println(a.aString);

}
public class A{
public String aString="1111";
}
}