iOS_OC重要知識點

概念--

1.蘋果電腦系統爲OS X  ; iOS爲移動端開發的系統
    Object-C  ;   面向對象編程  OOP:(Object Oriented Programming);  面嚮對象語言:C++, Java, C#          面向對象 也可以叫 面向接口對象
2.類和對象 是面向對象的核心           類:具有相同特徵和行爲的事物的抽象

對象是類的實例       類是對象的類型     文件名和類名本質沒有關係

方法--

      方法名: 刪除:類型標識,返回類型,參數類型,參數名,空格。

    * 只定義方法,不實現,編譯時候不會報錯,但是運行的時候就會報錯了,因爲編譯的時候只會判斷方法有沒有定義,而運行的時候是需要判斷這個方法有沒有實現

    * 類方法“ +(id) name ”中不能使用實例變量

點語法--

    1.點語法只能適用於set/get方法,如果沒有對應的set/get方法的話,是不能使用 .語法的

    2.這裏的get方法和其他語言不一樣,只要有返回值就是get方法

#include 、 # import 、  @class區別---

     1.  #include 如果連續多次在同一文件引入,會重複導入兩次
     2.  #import  則只導入一次,但是會造成“循環引入”,可以用@class解決
     3.  Xcode使用ifdefine對#include做了優化
    
    “循環引入”:A引入B ,B引入A
    
    @class 類名   只是聲明這是個類 沒有引入東西,不需要導入.h     但是這樣裏面的方法就不能使用,但是可以在.m文件裏面導入import "class.h"    因爲 .m文件 不會被引入,我們只引入.h文件,所以不會造成循環引入


       %@用來打印類創建的  對象
        NSString * _name 屬於創建對象  NSString屬於類;NSInteger

面向對象的三大特性--
   1、封裝
   2、繼承
   3、多態  不同的類的方法名一樣


      
%@打印對象時,內部就自動調用該對象的description方法,默認打印對象的地址。

重寫父類的description方法
-(NSString*)description
{
   return[NSStringstringWithFormat:@"%@,%@,%ld",_name,_sex,_age];
}

初始化方法名  必須以“ init ”開頭

     -(id)initWithName:(NSString *)name;


發佈了30 篇原創文章 · 獲贊 0 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章