一、類的定義
1.對一類事物的抽象(將事物中的相同屬性抽象成文乙個類),同一類事物必須具有相同屬性。
2、屬性和資料(如 姓名:劉娜,其中姓為屬性,劉娜為資料),相同屬性的便可看作一類事物,但同一類的不同物件可以具有不同的屬性。比如,劉娜這個物件有個頭髮顏色屬性,但是李江權沒有頭髮,故李江權沒有頭髮顏色這個屬性,但是在劉娜和李江權共有的類中不能定義頭髮顏色這個屬性。
3、乙個類中只能有乙個用public申明的主類。
二、物件導向(object oriened)
1、物件:一類事物中具體存在的每個個體。
2、物件導向:是一種思想,把構成問題事物分解成了各個物件。建立物件的目的不是為了完成乙個步驟,為了描述某個事物中解決問題中步驟的行為。
三、物件導向的三大特性
1、封裝
2、繼承
3、多型
四、物件導向的語法
訪問修飾符 關鍵字 class 類名稱
}五、建立物件(類的例項化)
1、建立物件/例項(類的物件/類的例項): 資料型別 變數名 = new 資料型別();
2、物件型別:八種基本型別之外,是以類作為資料型別等。
3、匿名物件:沒有引用值,賦值的時候通常會用到,等價於先new在賦值(直接new )。但是其只被使用一次,但是沒有應用指向他,會造成匿名物件在使用過後變為垃圾物件,等待gc的**。
六、構造方法:
構造方法的名字與類名保持一致,
1、無參構造
2、有參構造(和普通有參方法差不多,只不過方法名和類名相同,不寫返回值型別): 在例項化的同時初始化
如果沒有給定構造方法,那麼會預設給定乙個乙個無參構造方法。
七、this
理解為隱式的建立了乙個當前類物件。
八、物件記憶體
1、方法區裡面村的是.class的資訊、static修飾靜態成員變數(很少會存static修飾的方法)
2、在乙個jvm中只有乙個方法區和乙個堆記憶體,被所有的執行緒所共享。每個執行緒都具有乙個獨立的棧空間
3、方法存在棧記憶體中,不在堆記憶體中
4、區域性變數存在棧記憶體中。
5、類載入:讀取類的屬性,開闢堆記憶體的時候可以知道開闢什麼型別的屬性。載入的資訊放在方法區中
Swift學習第二天 物件導向
playground noun a place where people can play import uikit var str hello,playground 類和屬性 class role 成員方法 func playgame string 靜態方法 static func playbol...
第二天之類和物件
1 類 物件 成員變數 成員函式 2 物件導向三大概念 封裝 繼承 多型 物件導向簡單案例1 includeusing namespace std 求圓的面積 class mycircle void setr double r 方法 成員函式 double gets private int main...
20120622第二天 物件導向 01複習與練習
using system using system.collections.generic using system.linq using system.text namespace 01複習與練習 我想死你了,想你的,20120622 12,asas true,男 敬愛的 我想死你了,想你的,20...