内部类与枚举
面向对象-内部类:定义在类当中的一个类
为什么要使用内部类:
1.增强封装性,把内部类隐藏在外部类当中
2.增加了代码一个维护性
3.内部类可以直接访问外部类当中的成员
class Out{
//外部类
String name = "myxq";
class In{
//内部类
void test(){
system.out.println(name); //当内部类没有name成员时,可以访问外部类的成员。并且使用。
}
}
}
面向对象-内部类划分
内部类可以分为四种
1.实例内部类:直接定义在类当中的一个类,在类前面没有任何的修饰符
例:上文代码中
class In{
//class前面没有任何的修饰符
void test(){
system.out.println(name); //当内部类没有name成员时,
}
2.静态内部类:在内部类前面加上一个static
3.局部内部类:定义在方法的内部类
4.匿名内部类:属于局部内部的一种特殊情况
** 外部类的修饰符只能有两个:public 或 默认修饰符(什么都不加)
面向对象-实例内部类:
属于对象的内部类,不属于类的,不使用static修饰的内部类,想要使用内部类,必须得要先创建外部类
在内部类当中可以访问外部类当中的成员
在内部类当中,不能有静态的成员。因为静态成员属于类。
class Outer{
String name = "Outername";
class Inner{
String name = "inname";
void test(){
String name = "testname";
System.out.