假期学习11

第11天:内部类与枚举
对应章节:第5章 第6章
(1)今天做了什么: 四种内部类:非静态内部类(依赖外部类实例,可直接访问外部类所有成员);静态内部类(独立于外部类实例,可有静态成员);局部内部类(作用域限于方法内,只能访问final变量);匿名内部类(无名称,new 接口(){实现},常用于事件监听)。枚举(enum)本质是特殊类——每个枚举值是public static final实例,可含private构造器、成员变量和方法,还能实现接口。练习:用匿名内部类实现按钮点击事件处理;设计TrafficLight枚举含颜色、持续时间属性和获取下一灯的方法。
(2)明天准备做什么: 进入第7章基础类库前半部分——Scanner键盘输入,System和Runtime类,String类的不可变性与常量池机制,StringBuilder和StringBuffer的区别。练习统计字符频率和字符串反转。
(3)遇到的问题: 非静态内部类对象必须依赖外部类实例才能创建:new Outer().new Inner(),直接new Inner()报错。匿名内部类访问外部方法的局部变量时,该变量必须加final(或effectively final),否则编译报错。枚举写了public构造器编译不通过——枚举构造器只能是private的。枚举的values()方法自动生成,可遍历所有枚举值。

posted @ 2026-08-01 20:33  呱哒  阅读(10)  评论(0)    收藏  举报