从第一个Objective-C程序理解类、对象和方法
来源:互联网 发布:轴系校中软件 编辑:程序博客网 时间:2024/06/06 09:26
促使我学习Objective-C语言一个最主要原因是 我想 开发IOS应用程序,相信很多人刚开始和我一样,都是从最基础的语言开始学起。
下面我们从第一简单的例子开始讲起,个人认为脱离实际例子的语法讲解效果不是很好。
这个例子有3段程序块:
LittleRabbit.h LittleRabbit.m main.m
首先,是第一个LittleRabbit.h
<span style="font-size:14px;">@interface LittleRabbit : NSObject{ int age; NSString * name; int weight;}-(void)initWithAge:(int)_age andName:(NSString *)_name;-(void)sleep;-(void)weightUp:(int)_weight;-(void)info;@end</span>
紧接着,是 第二个LittleRabbit.m:
<span style="font-size:14px;">#import <Foundation/Foundation.h>#import "LittleRabbit.h"@implementation LittleRabbit-(void)initWithAge:(int)_age andName:(NSString *)_name{ age = _age; name = _name;}-(void)sleep{ NSLog(@"小白兔累了,它在睡觉!");}-(void)weightUp:(int)_weight{ weight = _weight + 10; NSLog(@"小白兔长胖了,现在已经%d斤了!",weight);}-(void)info{ NSLog(@"%@, %d, %d",name,age,weight);}@end</span>
最后是主函数,main.m
<span style="font-size:14px;">#import <Foundation/Foundation.h>#import "LittleRabbit.h"int main(int argc, const char * argv[]) { @autoreleasepool { LittleRabbit *rabbit = [LittleRabbit alloc]; [rabbit initWithAge:2 andName:@ "Ramsey"]; [rabbit sleep]; [rabbit weightUp:10]; [rabbit info]; NSLog(@"Hello, World!"); } return 0;}</span>
我在书上看到这个例子,觉得很不错,特别是对于类、对象和方法的理解。
下面说几点,我学到的知识点。
首先,在Objective-C中,后缀是.m,头文件依然是.h,所以看到.m的文件不要觉得奇怪。补充,C语言源文件后缀是.c,C++语言源文件是.cpp
其次,很多.m文件中,开头引入的Foundation.h是一个开发框架,直接导入就好
如果之前有C语言基础或者C++基础的同学,可能要注意以下几点:
在Objective-C中,类的定义都是在@interface 和 @end之间的,类后面的冒号代表继承的类,默认的继承的是 NSObject 类。
细心的人可能会发现,不同的方法前面有’+‘和’-’,额,在我这个例子里没有涉及加号。这是两种方法类型,符号'-'代表该方法是一个实例方法,而'+'表示该方法是 类方法。
实例方法是对类中实例执行的一些操作,而类方法是对类本身执行的某些操作。
通常情况下,类的声明和实现是分开的,分别在XXX.h和XXX.m文件中,这样感觉很清晰。
其中,函数名,类名最好规范。函数名首字母小写,后面的单词首字母大写。而类名的每个单词的首字母都大写。
其他还有很多细节方面的东西和语法,不过多看些例子就可以掌握。比如在类中声明方法的格式,参数的位置,主函数中类的初始化,包括如何输出NSLog等等
- 从第一个Objective-C程序理解类、对象和方法
- 第一个程序从Hello world!Objective-c 开始
- 第一个Objective-C 程序
- 第一个objective-c程序
- 第一个Objective-C程序
- 第一个Objective-C程序
- MacOS上第一个objective-c程序
- Objective-C的第一个程序
- 【Objective-C】03-第一个OC程序
- 【Objective-C】03-第一个OC程序
- Objective-C 第一个程序HelloWorld
- 一.创建第一个objective-c程序
- 【Objective-C】03-第一个OC程序
- Objective-C 3 解析第一个程序
- objective C程序 类和对象
- [Objective-C] 类、对象和方法
- Objective-C面向对象-Objective-C 对象,实例和方法
- 从 C++ 到 Objective-C(3):类和对象
- C#调用matlab动态链接库
- MongoDB 环境下的安装和问题
- iOS POP返回总结
- 安卓shape---圆角矩形
- (16)关联子查询。(17)将子查询作为临时表。
- 从第一个Objective-C程序理解类、对象和方法
- iOS开发之基础视图——UIProgressView和UIProgressView
- WebDriver原理分析
- 【第七章】 对JDBC的支持 之 7.2 JDBC模板类 ——跟我学spring3
- 查看openwrt内核版本
- hdu 1856(并查集)
- 111. Minimum Depth of Binary Tree
- 指针阅读技巧学习笔记
- java实现map和Object互转