[問題] 請問一下 class 裡面 super 這指令?

看板Flash作者 (星之影)時間15年前 (2010/08/02 18:48), 編輯推噓0(008)
留言8則, 2人參與, 最新討論串1/2 (看更多)
想請問一下高手... super 這指令到底在幹嘛@@" 因為沒有經驗 所以我是參考 greensock 的 as 檔來寫新的 class 可是我發現 原本的 PAPA 宣告是 var myvar:PAPA = PAPA(_obj); 如果我今天寫一個 class 1. package { 2. public class ABC extends PAPA { 3. public function AAA(vars:object) 4. super(vars) 5. } 6. } 問題點 : super 這指令到底在幹嘛 我測試過上面這段 第四行的 super 有或是沒有都可以 依照adobe 的說明 super 有點像是執行了一次父程式 super(vars) 等於重新設定了一次 PAPA ? 可是 ABC 本來就是繼承 PAPA 是否沒有增加其他變數 只有增加功能的情況下不用這行 super(vars) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.114.40

08/02 18:51, , 1F
印象中是把父類別的建構函數拿來用?...印象中啦XD
08/02 18:51, 1F

08/02 18:53, , 2F
是阿我有看到一個說明是假設 PAPA 內有一個 function
08/02 18:53, 2F

08/02 18:54, , 3F
可以用 super.function 呼叫 之後把回傳 擴充...
08/02 18:54, 3F

08/02 18:54, , 4F
可是我沒搞懂... 如果我不增加傳入 AAA 的物件
08/02 18:54, 4F

08/02 18:54, , 5F
是否就可以省略這行 super(vars)
08/02 18:54, 5F

08/02 19:21, , 6F
仔細想一想如果我只是要擴充功能是不是連 function AAA
08/02 19:21, 6F

08/02 19:21, , 7F
都可以不用只要用 class AAA extends PAPA
08/02 19:21, 7F

08/02 19:21, , 8F
裡面再寫入我要的擴充功能就好@@"
08/02 19:21, 8F
文章代碼(AID): #1CLgAGDs (Flash)
文章代碼(AID): #1CLgAGDs (Flash)