简介
以前不怎么理解嵌套类是什么意思。
感觉java核心编程讲的很好
嵌套类有两个好处:命名控制和访问控制。
如果 LinkedList 类里嵌套了 Iterator 这样使用类的时候
LinkedList::Iterator 这样就不会与其他名为Iterator的类发生冲突。
还有一种是访问控制 如果 Iterator 是 LinkedList 中的私有类,那么LinkedList 就可以访问 Iterator中的所有数据。而不会暴露给其他的代码。
code
package cn;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;
import javax.swing.JOptionPane;
import javax.swing.Timer;
public class InnerClassTest {
public static void main(String[] args){
TalkingClock clock = new TalkingClock(3000, true);
clock.start();
JOptionPane.showMessageDialog(null, "Quit program?");
System.exit(0);
}
}
class TalkingClock{
private int interval;
private boolean beep;
public TalkingClock(int interval, boolean beep){
this.interval = interval;
this.beep = beep;
}
public void start(){
ActionListener listener = new TimePrinter();
Timer t = new Timer(interval, listener);
t.start();
}
public class TimerPrinter implements ActionListener{
public void actionPerformed(ActionEvent event){
System.out.println("At the tone, the time is " + new Date());
if (beep)
Toolkit.getDefaultToolkit().beep();
}
}
}
---------------------------我的天空里没有太阳,总是黑夜,但并不暗,因为有东西代替了太阳。虽然没有太阳那么明亮,但对我来说已经足够。凭借着这份光,我便能把黑夜当成白天。我从来就没有太阳,所以不怕失去。
--------《白夜行》