静态内部类1

内部类分为一下四种:

       成员内部类 静态内部类 局部内部类  匿名内部类 


先来熟悉静态内部类:

// 相当于  类中的一个静态的属性或者方法

// 静态内部类中可以拥有静态的属性和方法

//也可以定义非静态的  因为,静态内部类也是一个类,所以类里面可以定义静态成员,也可以定义非静态成员。

//静态内部类的非静态方法可以访问外部类的静态变量和非静态变量

//而静态内部类的静态方法只可以访问外部类的静态变量


package lianxi;

public class StaticInner {

static String name = "小红";

int money;

public void fun(){

System.out.println("开心");

}

static class Inner{

static String name = "小黑";

int money = 10;

//静态内部类的非静态方法可以访问外部类的静态变量和非静态变量

//而静态内部类的静态方法只可以访问外部类的静态变量

public void test(){

System.out.println(name);

System.out.println(money);

}

public static  void test1(){

//静态类的静态成员不可以访问外部类的非静态变量

System.out.println(name);

//System.out.println(money);编译错误

}

}

}


main方法:

package lianxi;

public class test {

public static void main(String[] args) {

StaticInner.Inner staticInner = new StaticInner.Inner();

staticInner.test();//小黑 10

staticInner.test1();//小黑

}

}

你可能感兴趣的:(静态内部类1)