????1. ?????y??
????Java?е???????????????????????磬??????Comparable<T>??????壺
????public interface Comparable<T> {
????int compareTo(T o);
????}
????Comparable<T>????ж????????compareTo????????????????????????????????????????Arrays.sort?????????People??????????б??????People?????????”?????”????People????????Comparable<T>??????????????????????ж????????????????????????????????????????????????????????????????????????????????People?????????????????????????
????public class People implements Comparable<People> {
????...
????public int compareTo(People p) {
????//????????????
????}
????...
????}
??????????Arrays.sort??????????????????????????????Comparable????????????????????????????compareTo????????????????????????????С????????????????????????????????????????????????People???ж??????compareTo?????????????People???????????????????????Comparable<T>???????????????????????£??????????????????????????People????????peoples???б???
????Arrays.sort(peoples);
??????sort?????????????????????????????????????????People????
????if (peoples[i].compareTo(peoples[j]) > 0) {
????//???true???peoples[i] ????peoples[j]
????}
????????Arrays.sort?????????????People?????compareTo?????????????????????People????????????????????????People????????Comparable????????????м????????????????????????????????????????????????е??????????????????????????????????????????????????????????Date????Job?????????????????????ε???????????compareTo???????????????????????????????????У???????????????????????????
??????????????????????????????People???????"implements Comparable<People>“??????????????”??????????????????????compareTo?????????ü????????????????“??????????????п????????????Comparable<T>???????????????????????????compareTo????????????????????????????淶????????????????????????????????????漲??????????????????????????Comparable<T>???????????С??????People???????????????????????С?????????????漲???????????С???????????Compareble<T>???????漲???????????????????????????????????compareTo????????
????2. ????????
?????????????????????y???????????????????????????????????
??????????????????????η??????public??protected??????е????з??????????public??????????????????η???????ν???п?????峣??????????????????????????????????????y????????????????y??????????????????????????????????ù????implements???????????????????????????????????????ж????????????????????ɡ?
?????????????淶???????????????new??????????????????????????????????????????????????????????y???????????????′???
????Comparable<People> p = new People(...);
?????????????????????????????instanceof???ж???????????????????????
????if (p instanceof Comparable) {
????...
????}
?????????????”???“???????
????public interface InA extends InB {
????...
????}
??????????????????????????????????????????????????????????????”?????????淶”????????????????????????в?????????????????????????????????????????????????“???”???????????“???”??
????3.?????????????
???????????????????????????????????????????г??????????????????????????????????”????“???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????”???????????“??????????????????????????????????????????????????????????????????????????????“???”????????????????????????????????People?ж??????write???????????д????????????????????????????????е?????????????????????????????????????????????????????????????????????????????????????“????”??
??????????棬????????????????????????????????????????????????????????????????????public????????????е?????????public????????????淶?”???????“??????????????????private??????????????????????г??????????????????????????????????????????????????????й漲?????з??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????κθ????
????4. ?????????callback??
?????????callback????????????????????????????????????????????????????????ò?????????????磬Java??????и?Timer???????????????????????????????????????????????????Time???????????????????????????????е????????????????Timer???е???????????????????????????????????Timer??????????????????Timer????????????????????????ActionListener?????????????????£?
????public interface ActionListener {
????public void actionPerformed(ActionEvent event);
????}
????????????Time???????????????????actionPerformed???????????????????????ж???????????????????????е???????????′???
1 public class TimerTest {
2     public static void main(String[] args) {
3         ActionListener listener = new TimePrinter();
4         Timer t = new Timer(10000?? listener);
5         t.start();
6         System.exit(0);
7     }
8 }
9
10 class TimePrinter implements ActionListener {
11     public void actionPerformed(ActionEvent event) {
12         Date now = new Date();
13         System.out.println("The time is " + now);
14     }
15 }
??????????????У??????10????????TimerPrinter?е?actionPerformed????????????????ε?????actionPerformed?????????????????????У?????????????TimePrinter????????????ActionListener??????????????Timer?????????????????y?????????????listener?????????????????????