1. 程式人生 > >J2SE基礎:5.面向對象的特性2

J2SE基礎:5.面向對象的特性2

data 轉換 j2se 重載 padding 上轉型 span post 功能

Final的使用



final在類之前
表示該類是終於類。表示該類不能再被繼承。

final在方法之前
表示該方法是終於方法,該方法不能被不論什麽派生的子類覆蓋。

final在變量之前
表示變量的值在初始化之後就不能再改變;相當於定義了一個常量。




對象的上溯(上轉型)和對象的下溯



上轉型對象的特點:
A a = new B();
實例化是B,僅僅只是是A去接收而已。

所以僅僅能看到A中定義的屬性與方法。
A:不能操作子類新增的成員變量和方法;

B:能夠操作子類繼承的變量,也可操作子類繼承或重寫的方法;

假設子類重寫了父類的某個方法後,

當對象的上轉型對象調用這種方法時一定是調用了這個子類重寫的方法。



使用上轉型對象的優缺點:

缺點:不能操作子類新增的成員變量和方法

長處:
A:上轉型對象是實現對象多態的前提條件。



B:以犧牲少部分的功能來換代替碼設計的最大幅度的優化。


類型的下溯:

假設此時上轉型對象想要操作子類新增的方法和屬性。能夠進行

對象類型的下溯。

下溯成功後,就能夠看到自已新增的屬性與方法。





類型的上/下溯的註意點:


操作的對象都是針對子類進行上/下的轉換。



操作的上/下轉型對象之間必需要有繼承關系。





重載


當有參數精確匹配時,調用的是精確匹配的方法。



假設沒有,尋找參數相應的父類類型。(Object,String,StringBuffer)





重寫/上轉型對象:一旦用上轉型對象的話,方法被子類重寫,肯定調用的是

子類重寫的方法。




多態


1:什麽是多態:

多態就是指父類的某個方法被子類重寫時,

能夠各自產生自己的功能行為。



2:多態的條件

A:要有繼承關系



B:子類必須對父類的方法進行重寫



C:父類的引用要指向子類(對象的上轉型)。


3:多態的中的父類的引用要指向子類造成了多態的後期綁定。



前期綁定與後期綁定:


前期綁定:編譯期間就已經確定其類型。



後期綁定:在執行期間才確定對象類型。

J2SE基礎:5.面向對象的特性2