欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

IOS 開發(fā)之Object-C中的對象詳解

 更新時間:2017年06月28日 09:00:56   投稿:lqh  
這篇文章主要介紹了IOS 開發(fā)之Object-C中的對象詳解的相關(guān)資料,需要的朋友可以參考下

IOS 開發(fā)之Object-C中的對象詳解

前言

關(guān)于C語言的基礎(chǔ)部分已經(jīng)記錄完畢,接下來就是學(xué)習(xí)Object-C了,編寫oc程序需要使用Foundation框架。下面就是對oc中的對象介紹。

對象

對象和結(jié)構(gòu)類似,一個對象可以保存多個相關(guān)的數(shù)據(jù)。在結(jié)構(gòu)中,我們稱這些數(shù)據(jù)為成員。而在對象中,稱這些數(shù)據(jù)為實例變量。除了這些以外,對象和結(jié)構(gòu)不用之處在于,對象還可以包含一組函數(shù),并且這些函數(shù)可以使用對象所保存的數(shù)據(jù),這類函數(shù)稱為方法。

類(class)負(fù)責(zé)描述某個特點類型的對象,其中包括方法和實例變量。類可以描述以下兩種對象:

  1. 抽象概念,例如數(shù)據(jù)、字符串和指令集。
  2. 實際存在的事物,例如人、地點等。

一個類定義了一種對象,同時它也可以用來創(chuàng)建這種對象。類既是對象的原型,又是生產(chǎn)對象的工廠。

實例

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
  @autoreleasepool {
    // insert code here...
    NSDate *today=[NSDate date];

    NSLog(@"%p",today);
  }
  return 0;
}

上面程序中 等號(=)左邊是變量today,變量前面的*說明它是一個指針,這個指針保存著NSdate實例在內(nèi)存中的地址。賦值運算符的右邊是返回了NSDate實例的地址。整個過程稱為消息發(fā)送。

方法和函數(shù)類似。根據(jù)指令執(zhí)行相應(yīng)的功能。oc中,想要執(zhí)行方法里的代碼,首先需要發(fā)送一條消息給包含這個方法的對象或類。

上面的程序中NSDate類中有一個date方法,因此,我們向NSDate類發(fā)送了date消息,讓它執(zhí)行date方法。

消息發(fā)送必須寫在一對方括號里,并且必須包含接受方和選擇器。

如下面格式:

修改程序,如下:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
  @autoreleasepool {
    // insert code here...
    NSDate *today=[NSDate date];

    NSLog(@"today=%@",today);
  }
  return 0;
}

輸出結(jié)果:

today=2016-12-06 00:02:59 +0000

獲取到NSDate的實例,這時就可以給它發(fā)送消息了,如下程序:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
  @autoreleasepool {
    // insert code here...
    NSDate *today=[NSDate date];

    double seconds=[today timeIntervalSince1970];

    NSLog(@"seconds=%f",seconds);
  }
  return 0;
}

輸出結(jié)果:

seconds=1480982760.070326

timeIntervalSince1970的作用是會算出現(xiàn)在的時間和1970年1月1號12:00 AM(GTM)之間的時間差。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

最新評論