關於抽象類與靜態類的初步瞭解

李二狗的妖孽人生發表於2017-12-08

抽象類


關於抽象方法的描述:

  1. 抽象類必須在抽象類中
  2. 抽象類不能有方法的實現
  3. 抽象方法不能使用private修飾符
  4. 如果抽象類的子類是一個普通的類,那麼必須實現(重寫)父類中所有的抽象方法
  5. 抽象方法是用abstract修飾public abstract void Practice();
  6. 抽象方法使用override

關於抽象類的說明:

  1. 抽象類中可以有欄位丶屬性丶方法(普通方法,虛方法,抽象方法)
  2. 抽象類不可以直接例項化對像,但是可以通過父類應用指向子類物件的方法(Animal ani=new Dog();)
  3. 抽象方法必須存在於抽象類中,但是抽象類中可以沒有抽象方法(就像魚和水的關係:魚(抽象方法)必須在水(抽象類)裡面才能存活,但是水(抽象類)裡是可以沒有魚(抽象方法)的
關於繼承抽象類的說明:

  1. 普通類繼承抽象類的時候,必須實現抽象類中的所有抽象方法!
  2. 抽象類繼承於抽象類的時候,可以選擇實現父類中的抽象方法,也可以不實現

靜態類


關於靜態類的說明:
  1. 什麼是靜態類? 使用static關鍵字修飾的類被叫做靜態類
static class MyMath
{
//int length; //不能包含非靜態類成員
static int id = 10;
//void fun(){}//不能包含非靜態類成員
static int Abs()
{
return a > 0 ? a : -a ;
}
}
2. 靜態類不能例項化物件
3. 靜態類內部的成員必須是靜態成員,或者是const修飾的常量(常量在定義的同時必須賦值,因為常量在執行期間不能改變)
注意:靜態類中沒有預設的建構函式,只有靜態建構函式

相關文章