首先,為什么我們要定義一個新類呢?按照我的理解,就是為了抽象出來一個新的東西(也就是類),用來存儲更多的數據變量和方法,一切類都直接或間接繼承與NSObject。

    在類的頭文件里我們可以定義成員變量、屬性變量、和方法,在方法里又分為實例方法和類方法。

 

1.成員變量

成員變量可以以三個關鍵詞來修飾,即public、protected、private,用public來修飾的變量為共有的,外部可以訪問子類可以繼承

用protected來修飾的變量是受保護型的,外部無法訪問子類可以繼承(成員變量默認為protected);

用private來修飾的變量為私有的,外部無法訪問子類無法繼承;

2.屬性變量

創建一個屬性變量系統主要會幫我們做兩件事,第一,為這個屬性提供一個set方法和一個get方法,第二,會為我們創建一個變量名為“_變量名”

的成員變量。如上,創建的成員變量名為_scholl 和 _score;(property屬性還有很多其他知識點,這里不詳述,可以參考我的另一篇對于property的一些用法)。

 

3.實例方法和類方法

實例方法也稱對象方法,它必須要用對象去調用這個方法,也就是說要有內存了才能去調用這個方法;

類方法的調用不需實例話,可以直接調用這個方法,也就是說類方法不必占用內存就能調用,類方法通常用于封裝一些實現的方法,數據等;

在類方法中不要去調用這個類的成員變量,屬性變量和對象方法。

類方法和對象方法的調用區別如下:

 

最后:必須提醒一下,要在另一個類里面用到這個類的方法或者是變量就必須在那個類中導入這個類的頭文件。