動態綁定和靜態綁定
Java中綁定有兩種形式靜態綁定static-binding(早綁定early-binding)和動態綁定dynamic-binding(晚綁定late-binding,或運行時綁定runtime-binding)
靜態綁定是在編譯時綁定,而動態綁定是在運行時根據對象的實際情況來選擇綁定父類或者是某個子類的方法。在執行效率上,靜態綁定要優于動態綁定,但喪失了靈活性。
Java中變量是動態綁定的,實例方法是動態綁定的。在進行“向上轉型”的時候子類會覆蓋父類的實例方法而不會覆蓋父類的變量。
靜態綁定是在編譯時綁定,而動態綁定是在運行時根據對象的實際情況來選擇綁定父類或者是某個子類的方法。在執行效率上,靜態綁定要優于動態綁定,但喪失了靈活性。
Java中變量是動態綁定的,實例方法是動態綁定的。在進行“向上轉型”的時候子類會覆蓋父類的實例方法而不會覆蓋父類的變量。
posted on 2007-07-07 14:57 itkui 閱讀(2180) 評論(2) 編輯 收藏 所屬分類: Java