Objective-C----NSLog( )

概念

NSLog()可以使用 %@ 格式说明符来输出对象。NSLog()处理%@说明符时,会询问参数列表中相应的对象以得到这个对象的描述。从技术上来讲,也就是NSLog()给这个对象发送了description消息,然后对象的description方法生成一个NSString并将其返回。NSLog()就会在输出结果中包含这个字符串。在类中提供description方法就可以自定义NSLog()会如何输出对象。

在自定义的description方法中,你可以选择返回一个字面值NSString,如@“gkejlkgjlkghkehgl”,也可以构造一个用来描述该对象各类信息的字符串。在cocoa中,NSArray类管理的是对象的集合,它的description方法提供了数组自身的信息,例如数组中对象的个数和每个对象所包含的描述。当然,对象的描述是通过向数组中的对象分别发送description消息来获得的。

注意:%@只是调用每个对象的description方法并显示结果。

例代码

.h 文件:

#import "Person.h"

@interface Test : Person

@end

.m 文件:

#import "Test.h"

@implementation Test

- (NSString *)description {
   return (@"1234567890");
}

@end

main()函数中:

Test *_oneTest = [Test new];
NSLog( @"%@", _oneTest );

输出结果:

时间: 2024-07-30 01:18:04

Objective-C----NSLog( )的相关文章

objective - c 类和对象

知识点 1.初步认识 OC 2.xcode使用 3.面向对象编程思想,类和对象 4.类的定义和使用 5.类的实例化--对象 6.声明和实现相分离 =========================================== 1.需要理解的(理论部分) 第一部分:OC和面向对象 1.1.OC语言的历史,特点.重要程度 [什么是OC] objective - c   在C语言基础上开发, 面向对象的语言: 注意C语言和oc语言语法的区别: IOS, iphone, ipad … [进入OC

Objective C (iOS) for Qt C++ Developers(iOS开发,Qt开发人员需要了解什么?)

Qt/C++开发人员眼中的Obj-C 对于我们第一次自己定义iOS应用来说,对于来自Qt/C++开发人员来说,我不得不学习Objective-C相关语法与知识 为了让读者可以更easy理解这篇博客的内容,我将描写叙述诸多我所学到的东西.这将很多其它的是大脑转存而不是单一的教程 ,所以我仍然希望这将对你非常有帮助,我将首先写编程语言的差异,然后再写关于类库的差异 1.Objective C vs C vs C++ 类似于C++,Obj-c是C语言的一个超集(这不是100%正确的,可是一个足够好的语

Objective - c Chapter 1 -2 Hello world

Objective - c   Chapter 1  Hello world 1.1 1.2.On the Welcome screen, click "Create a new Xcode project" (see Figure 2-1), or just chooseFile ->New ->New Project. 1.3.在main里写如下代码 #import <Foundation/Foundation.h> int main(int argc, c

Objective C笔记(第一天)

• OC语言概述 1.早在20世纪80年代早期,Bard Cox发明了Objective C, 是扩充的C,面向对象的编程语言. 2.NEXTSTEP简称NS a.1985年,Steve Jobs成?立了NeXT公司. b.1988年,NeXT SoftWare公司获得了OC的语言授权, NEXTSTEP环境成为了苹果操作系统,创建的开发包.MACOS c.1996年,12月20?日,苹果公司宣布收购了NeXT software公司,NEXTSTEP环境为apple公司下主要开发.发?行操作系统

Windows下搭建objective C开发环境

最近打算针对iPhone.iPod touch和iPad开发一些应用,所以,需要开始学习Objective C(苹果推出的类似C语言的开发语言).由于苹果的自我封闭的产业链发展模式(从芯片.机器.开发语言.终端产品.服务)的限制,要想开发针对苹果 iPhone等产品的应用程序,就需要用Mac机器,在Xcode的IDE上使用Objective C语言开发.Mac机器就不用说了,那比PC机器要贵不少(当然性价比还是很高的),所以,要想廉价方式学习Objective C就必须要在Windows上能搭建

iOS完全自学手册——[三]Objective-C语言速成,利用Objective-C创建自己的对象

1.前言 上一篇已经介绍了App Delegate.View Controller的基本概念,除此之外,分别利用storyboard和纯代码创建了第一个Xcode的工程,并对不同方式搭建项目进行了比较.这一篇文章,我准备为大家介绍一下奇葩的Objective-C语言的语法和使用.这篇文章主要讲Objective-C的理论概念. 2.学习目标 2.1 Objective-C语言面向对象的特性与其他语言(C++)类比学习,声明定义一个MyObject类,并创建这个类的实例. 2.2 Objectiv

Objective-C( Foundation框架 一 字符串)

Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重新给这个字符串赋值.而NSMutableString 创建赋值以后可以动态在该字符串上更改内容与长度. 创建NSString字符串: NSString 与 char* 最大的区别就是 NSString是一个objective对象,而char* 是一个字节数组.@+ " 字符串 " 这个符号

Objective -C Memory Management 内存管理 第一部分

Objective -C Memory Management??内存管理??第一部分 Memory management is part of a more general problem in programming called resource management. 内存管理是资源管理的一部分. Every computer system has finite resources for your program to use. These include memory, open fi

Objective C - 4 - 下载图片并且加载到View

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 #import "LoadInternetImageViewController.h" @interface LoadInternetImageViewControll

iOS开发核心语言Objective C —— 全部知识点总结

本分享是面向有意向从事iOS开发的伙伴及苹果产品的发烧友,亦或是已经从事了iOS的开发人员,想进一步提升者.假设您对iOS开发有极高的兴趣,能够与我一起探讨iOS开发.一起学习,共同进步.假设您是零基础.建议您先翻阅我之前分享的iOS开发分分钟搞定C语言系列,然后在開始Objective C语言的学习,假设您遇到问题也能够与我探讨.另外将无偿分享自己整理出来的大概400G iOS学习视频及学习资料,都是干货哦.能够新浪微博私信?关注极客James,期待与您的共同学习和探讨! ! 由于时间有限,每