[問題] 請教一個基本問題

看板java作者 (Arim5566)時間13年前 (2010/08/21 23:37), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/2 (看更多)
初學java跟Android 想問一下關於下面程式碼 private Button.OnClickListenter calcBMI=new Button.OnClickListener() //這邊的calcBMI應該是一個物件吧?,不太懂為什麼書上寫這是一個函式 { ......} //這邊又配了一組大括號 大括號裏面又定義且實作了public void Onclick(View v)... 如果calcBMI是一個函式的話不太懂為什麼沒有寫回傳值以及參數而且又可以在裏面又 定義實作函式 而如果是物件的話不太懂為什麼還可以配一組大括號給他,一般宣告物件不就是 寫一行而已嘛? 主要是沒看過這種寫法 小弟懇求板友們給予指教 謝謝 -- ~宅男的四個徵兆~ ∠□ ○ ! * \○/ ★    (○ ? ╦╦└□ " ○□═ □   □> ║║√√ ╦══╦ ∥    |\ 一回家就上PTT 每天想正妹 以當好人為樂 忘記正妹虧欠自己 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.107.80 ※ 編輯: Arim 來自: 114.45.107.80 (08/21 23:39)

08/22 00:28, , 1F
這是Inner class的寫法,也就是說相當於你定義了一個繼承
08/22 00:28, 1F

08/22 00:30, , 2F
自Button.OnClickListenter的class並且new出來由calcBMI去
08/22 00:30, 2F

08/22 00:30, , 3F
指涉它。
08/22 00:30, 3F

08/22 08:58, , 4F
看到 new 就知道是物件沒錯,應該是書寫錯了。
08/22 08:58, 4F

08/22 10:11, , 5F
呵, 如果方便的話, 多加幾個逗號吧 :P
08/22 10:11, 5F
文章代碼(AID): #1CR_B8cs (java)
文章代碼(AID): #1CR_B8cs (java)