1、抽象類
/*2、介面抽象的特點:
1,抽象方法沒有方法體,必須由抽象關鍵字所修飾。
2,抽象方法一定存在於抽象類中,必須由抽象關鍵字所修飾。
3,抽象類不可以例項化。因為呼叫抽象方法沒意義。
4,子類必須覆蓋抽象類的所有抽象方法後,子類就可以例項化。否則該子類還是抽象類。
抽象類的常見問題:
1,抽象類一定是父類嗎?
是的,因為只有子類覆蓋了抽象類中的方法,才可以建立物件,去使用這些方法。
2,抽象類中有構造方法嗎?
有,因為父類的建構函式可以給子類物件初始化。
3,抽象類中一定有抽象方法嗎?
不一定。
其實抽象類和一般類都是用來描述事物的。都有具體的屬性和行為。
不同之處:
抽象類中可以定義抽象類方法。但是不能例項化。
一般類中不可以定義抽象方法,但是可以例項化。
沒有抽象方法的抽象類的出現,僅僅是不讓該類建立物件。
4,抽象關鍵字不可以和哪些關鍵字共存呢?
final:
private:
static:
介面可以簡單的理解為是乙個特殊的抽象類。介面的思想abstract
class
absdemo
class
demo extends absdemo
void
show2(){}
}
1,介面是對外提供的規則。
2,介面的出現提高功能的擴充套件性。
3,介面的出現降低了耦合性。 解耦。
//用關鍵字inte***ce來定義介面。而且內中的成員就固定為幾種,而且修飾符是固定的。抽象類其實負責的是乙個體系的基本功能。//介面中的成員都是public修飾的。
特點:1,介面不可以例項化。
2,介面的子類必須覆蓋介面中所有的抽象方法後,該子類才可以例項化。否則該子類是抽象類。
介面負責的是額外的功能。
抽象類和介面的區別1,抽象類和類之間存在的是繼承(is a)關係,但是只能單繼承。
介面和類之間存在的是實現(like a)關係,可以多實現。
2,抽象類中是可以定義非抽象方法的,提供給子類直接使用。
介面中的方法都是抽象的,子類必須全部實現才可以使用。
單繼承。 class fu1}
class fu2}
class zi extends fu1,fu2//不允許。3、練習
1,多型的好處弊端,前提。
本類的引用可以指向本類的物件也可以指向其子類的物件。★★★★★
animal a = new
animal();
a = new
cat();
本型別的引用可以指向本型別的物件。
animal a = new
animal();
a = new
cat();
class
animal
class
cat extends animal
2,向上轉型,向下轉型什麼時候用,**舉例!
class
dog extends animal
}class
public
static
void
show(animal a)
}
day6物件導向(上)
理解 1,比如要吃飯,找了乙個保姆做飯 物件 2,保姆就是乙個物件,用做飯的技能 方法 做飯,你說你想吃啥 引數 3,返回給你你說的飯 4,吃面向過程 強調每乙個功能的步驟。物件導向 強調的是物件,然後由物件去呼叫功能 物件 就是該類事物的具體體現 位置 類中,方法外 初始化值 成員變數有初始化值 ...
day 6 物件導向的思想
物件導向的思想 特點是是一種更符合我們思想習慣的思想 懶人思想 可以將複雜的事情簡單化 將我們從執行者變成了指揮者 角色發生了轉換 物件導向的特徵 封裝 encapsulation 繼承 inheritance 多型 polymorphism 建立物件使用。裡面有成員變數和區域性變數的區分。a 在類...
上課記錄 Day6
html css和bootstrap框架的關係是什麼 下列 布局合理嗎?不合理的話,應該怎麼改進 不合理 名字跟暱稱應該各分為一塊 名字 暱稱 絕對路徑和相對路徑的差別是什麼 col md 6 col xs 6這兩個類分別表示什麼含義 col md push 6 col md offset 6 co...