溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

IOS開發(fā)之Object-C中對(duì)象的示例分析

發(fā)布時(shí)間:2021-07-09 09:31:39 來源:億速云 閱讀:88 作者:小新 欄目:移動(dòng)開發(fā)

這篇文章給大家分享的是有關(guān)IOS開發(fā)之Object-C中對(duì)象的示例分析的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

對(duì)象

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

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

  1. 抽象概念,例如數(shù)據(jù)、字符串和指令集。

  2. 實(shí)際存在的事物,例如人、地點(diǎn)等。

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

實(shí)例

#import <Foundation/Foundation.h>

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

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

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

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

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

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

如下面格式:

IOS開發(fā)之Object-C中對(duì)象的示例分析

修改程序,如下:

#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的實(shí)例,這時(shí)就可以給它發(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的作用是會(huì)算出現(xiàn)在的時(shí)間和1970年1月1號(hào)12:00 AM(GTM)之間的時(shí)間差。

感謝各位的閱讀!關(guān)于“IOS開發(fā)之Object-C中對(duì)象的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI