JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Java SE 討論區  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友   
reply to postflat modego to previous topicgo to next topic
本主題所含的標籤
作者 在Java使用Event類別,用implements跟用泛型取得Event類別功能,兩者的差異?
lueichun





發文: 32
積分: 0
於 2020-04-13 11:02 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
java的event是長這樣:
public interface Event<T>{
......
public void fire(T event);
......
}

若現在定義一個新的event:
public class TestEvent implements Serializable {
......
}

並宣告一個屬性,長成以下這樣:
private Event<TestEvent> testEvent;

那以下的code是可以正常觸發事件的,其實就是觸發testEvent:
testEvent.fire(new TestEvent(......));

那我想請問,為什麼testEvent明明只是TestEvent類別,並沒有繼承或實作Event類別,

那為何testEvent是可以呼叫Event類別的fire方法卻不會出錯呢?

感覺是跟泛型有關,但是又想不通原因,請問邏輯或是原理是什麼呢?


lueichun edited on 2020-04-13 11:05
reply to postreply to post
話題樹型展開
人氣 標題 作者 字數 發文時間
518 在Java使用Event類別,用implements跟用泛型取得Event類別功能,兩者的差異? lueichun 436 2020-04-13 11:02
319 Re:在Java使用Event類別,用implements跟用泛型取得Event類別功能,兩者的差異? mpleader 438 2020-05-18 09:29
» JWorld@TW »  Java SE 討論區

reply to postflat modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8