Java???????-???Awt Button
???????????? ???????[ 2015/6/26 14:23:27 ] ????????????????
???????????
????Java ??Awt?? Observer????????Java??????awt??Button?????л???
????????????
????1.Test.java
1 import java.text.DateFormat;
2 import java.text.SimpleDateFormat;
3 import java.util.ArrayList;
4 import java.util.Date;
5 import java.util.List;
6
7 public class Test {
8
9 public static void main(String[] args) {
10 Button b = new Button();
11 b.addActionListener(new MyActionListener1());
12 b.addActionListener(new MyActionListener2());
13 b.buttonPress();
14 }
15 }
16
17 class Button {
18
19 //??List???Listener
20 private List<ActionListener> actionListeners = new ArrayList<ActionListener>();
21
22 public void addActionListener(ActionListener l) {
23 actionListeners.add(l);
24 }
25
26 public void buttonPress(){
27 ActionEvent e = new ActionEvent(System.currentTimeMillis()?? this);
28 for (ActionListener l : actionListeners) {
29 l.actionPerformed(e);
30 }
31 }
32 }
33
34 interface ActionListener {
35 public void actionPerformed(ActionEvent e);
36 }
37
38 class MyActionListener1 implements ActionListener {
39
40 @Override
41 public void actionPerformed(ActionEvent e) {
42 System.out.println("MyActionListener1");
43 System.out.println("??????????"+e.getTime()+" ??????"+e.getSource());
44 }
45
46 }
47
48 class MyActionListener2 implements ActionListener {
49
50 @Override
51 public void actionPerformed(ActionEvent e) {
52 System.out.println("MyActionListener2");
53 System.out.println("??????????"+e.getTime()+" ??????"+e.getSource());
54
55 }
56
57 }
58
59 class ActionEvent {
60
61 private long time;
62 private Object source;
63
64 public ActionEvent(long time?? Object source) {
65 this.time = time;
66 this.source = source;
67 }
68
69 public Object getSource() {
70 return source;
71 }
72
73 public String getTime() {
74 // DateFormat df = new SimpleDateFormat("dd:MM:yy:HH:mm:ss");
75 DateFormat df = new SimpleDateFormat("yyyy:MM:dd---HH:mm:ss");
76 return df.format(new Date(time));
77 }
78
79
80 }
???????????н??
??????
???·???
??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???·???????·
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11