昨天看了一遍《Learn Objective-C on the Mac》,晦涩难懂。这本书的编码环境实在是过于陈旧,跟我现在用的Xcode4.2差距甚远。边看边写边求索于谷歌、百度。最终,凭着尚有老本的C/C++基础,弄明白这是怎么一回事。
C语言的确是万源之源,只要你还有那么点C的基础,入手Object-C就不算太难。
做个简单的纪录,定义一个人物类,只要求有名字,年龄。
先做个接口定义,要求对成员变量赋值,并且输出结果
#import <Foundation/Foundation.h>
@interface Person : NSObject {
// 是不是可以理解为私有变量,成员变量?那本书里没有这个语法。
@private
NSString *name;
int age;
}
//设置参数方法
//变量类型要放在括号里,很奇特的语法
- (void) setName:(NSString *) nameValue;
- (void) setAge:(int) ageValue;
//打印数据
- (void) print;
@end
做个实现类:
#import "Person.h"
@implementation Person
- (void) setName:(NSString *)nameValue
{
name = nameValue;
}
- (void) setAge:(int)ageValue
{
age = ageValue;
}
- (void) print
{
// 字符串格式化,nil据说就是0,我也不知道该怎么描述它
// 还要用到stringWithFormat,叫做类方法
NSLog([NSString stringWithFormat:@"姓名:%@",name], nil);
NSLog(@"年龄:%d",age);
}
@end
最后,来调用:
#import <Foundation/Foundation.h>
#import "Person.h"
int main (int argc, const char * argv[])
{
@autoreleasepool {
// 实例化Person,这里都是在[]中完成的
// [Person new]意思是向Person发送new指令
Person *person = [Person new];
// 调用setAge方法,冒号后面赋值
[person setAge:29];
// NSString变量初始化时需要用@符号前缀
[person setName:@"Snowolf"];
//调用print方法
[person print];
}
return 0;
}
其结果就是:
留做纪念,几乎一年没有写代码了,更别说是写这么个新玩意——Object-C。
如何找回自己?先从熟悉的事情做起。。。
- 大小: 133.1 KB
分享到:
相关推荐
Objective-C是一种广泛用于苹果平台应用程序开发的编程语言,它是C语言的一个超集,并加入了Smalltalk风格的消息传递机制。本篇教程主要面向初学者,介绍了Objective-C的基础知识点和一些核心概念。 1. Objective-C...
Objective-C是在C语言基础上扩展的,引入了Smalltalk的面向对象特性,如消息传递机制,使得代码更加灵活和可扩展。 "第二讲 数据类型、运算符和表达式"深入讲解了基本的数据类型,包括整型、浮点型、字符型等,以及...
### Objective-C 2.0 运行时系统编程指南 #### 概述 Objective-C是一种面向对象的编程语言,它以其独特的动态性而闻名。这种动态性体现在它能够尽可能地将决策过程推迟到运行时执行,而不是在编译或链接阶段。因此...
《Objective-C高级编程:iOS与OS X多线程和内存管理》是一本深入探讨Apple平台开发中的关键技术的书籍。本书主要围绕Objective-C语言在iOS和OS X操作系统上的应用,特别是针对多线程和内存管理这两个核心主题进行...
Objective-C语言的许多决策可以在编译和运行时执行。只要有可能,它是动态的。这意味着Objective-C语言不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。Runtime系统是一种用于Objective-C语言的操作系统...
### 在Windows下搭建Objective-C开发环境 随着移动应用开发的普及,越来越多的开发者开始尝试不同的编程语言和技术栈。尽管Objective-C主要与Apple的平台(如iOS和macOS)相关联,但有时候,出于某些原因(比如团队...
Objective-C语言入门教程&深入浅出,理论实践相结合 Objective-C语言入门教程&深入浅出,理论实践相结合 Objective-C语言入门教程&深入浅出,理论实践相结合 Objective-C语言入门教程&深入浅出,理论实践相结合 ...
1. **Objective-C基础**:Objective-C是在C语言基础上扩展的,因此,理解C语言的基本语法是必要的。Objective-C添加了消息传递机制、类和协议等面向对象特性。 2. **消息传递**:Objective-C中的对象通过发送消息来...
C语言是计算机编程的基础,它是Objective-C的重要基石。在学习Objective-C之前,深入理解C语言的知识点至关重要。C语言以其高效、简洁和灵活性被广泛应用于系统编程、嵌入式开发、游戏引擎等领域。本资料主要涵盖了...
Objective-C是基于C语言的,主要用于构建iOS和macOS应用程序,而Objective-C++则是Objective-C的一个扩展,它引入了C++的特性,使得开发者可以同时利用Objective-C的动态特性和C++的面向对象编程能力。 ### ...
希望这个简单的Objective-C语言教程能够为你提供一个入门的起点。Objective-C是一种面向对象的编程语言,广泛应用于Mac OS和iOS开发。通过学习Objective-C的基本语法、类和对象、控制流程和方法等内容,你将能够编写...
1. **Objective-C基础**:Objective-C是在C语言基础上扩展的,因此它包含了C的所有特性。书中会讲解基本的数据类型、控制结构、函数和指针等基础知识,同时介绍Objective-C特有的动态类型和消息传递机制。 2. **...
《Objective-C基础教程》是一本面向初学者的编程书籍,主要涵盖了Objective-C语言的基本概念、语法和编程实践,尤其适合那些想要踏入iOS应用开发领域的学习者。Objective-C是Apple公司开发的面向对象的编程语言,它...
1. **Objective-C基础**:Objective-C是在C语言基础上扩展的,添加了面向对象特性。它的基础包括类、对象、消息传递等概念。类定义了对象的属性和行为,对象则是类的实例。消息传递是Objective-C的核心,通过`...
Objective-C语法的基石是C语言的语法结构,这意味着所有的C语言代码都可以在Objective-C中直接使用。但是,Objective-C在C的基础上新增了消息传递机制,这是它与C语言的一个重要区别。在Objective-C中,方法调用是...
《Objective-C 程序设计(第4版)》作者假设读者没有面向对象程序语言或者C语言(Objective-C基础)编程经验,因此,初学者和有经验的程序员都可以使用这本《Objective-C 程序设计(第4版)》学习Objective-C。...
用Objective-C语言实现了各种设计模式,收集各种例子,方便大家学习和普及设计模式。.zip用Objective-C语言实现了各种设计模式,收集各种例子,方便大家学习和普及设计模式。.zip用Objective-C语言实现了各种设计...
通过这两个文档,学习者可以从基础到高级,全面掌握Objective-C语言,并能应用于实际的iOS和macOS开发项目。了解并熟练掌握Objective-C是成为苹果平台开发者的关键步骤,因为虽然Swift已经越来越流行,但Objective-C...
Objective-C是在C语言的基础上扩展的,因此了解C语言的基本概念是必要的。C语言提供了基本的数据类型(如int、char、float等)、控制流程(如if语句、for循环、while循环)、函数以及指针等概念。在Objective-C中,...
综上所述,《Objective-C基础教程》作为一本介绍Objective-C语言及其在iOS开发中应用的专业书籍,不仅适合初学者入门学习,也对有经验的开发者有着重要的参考价值。通过深入学习本书,读者可以全面掌握Objective-C的...