静态内部类(12.15)
作者:互联网
成员内部类常见的修饰符为:
private:为了保证数据安全性
static:为了方便访问数据
静态修饰的特点:
内部类如果是静态修饰的,只能访问外部类静态的成员
创建静态内部类的格式:
外部类名.内部类名 对象名=new 外部类名.内部类名();
class Outer4{
private int num = 10;
private static int num2 = 30;
//静态内部类
static class Inner4{ //静态的东西不能创建对象,因为静态的东西属于类本身,即Inner4属于Outer4本身
public void show(){
// System.out.println(num);
System.out.println(num2);//内部类可以访问外部类的成员,包括私有
}
public static void show2(){
// System.out.println(num);
System.out.println(num2);//静态内部类只能访问外部静态成员
}
}
}
public class InnerClassDemo4 {
public static void main(String[] args) {
//Error:(33, 29) java: 限定的新静态类
// Outer4.Inner4 oi4 = new Outer4().new Inner4();
// oi4.show();
//当内部类是被静态所修饰的时候,出现了另一个创建内部类的格式
//访问格式如下:
//外部类类名.内部类类名 变量名 = new 外部类类名.内部类类名();
Outer4.Inner4 oi4 = new Outer4.Inner4();
oi4.show();
// oi4.show2();
//外部类调用静态内部类中的静态成员,无需创建对象,直接调用
//Outer4里面有静态的Inner4,Inner4里面有静态的show2,无需创建对象直接调用
Outer4.Inner4.show2();
}
}
标签:Inner4,内部,静态,Outer4,12.15,static,oi4 来源: https://www.cnblogs.com/shuangjianga/p/15700728.html