A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© iOSyinlixian 中级黑马   /  2016-4-6 00:11  /  706 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

用objective c编写了个简单的创建类实例并执行实例方法的代码。

本文示例选用的是mac osx下,application类型,command line tool,type是Foundation:



这个例子,从java的观点看,创建了一个Book类,类包含一个实例属性,name。有get和set方法。另外有个任意方法:

public void print()

在该方法中打印Book实例的name。

使用类的代码如下:

Book *book=[Book new];
book.name=@"三字经";
[book print];

这里,第一行相当于java里面的:

Book book=new Book();

第二行,类似:

book.setName(“三字经”);

第三行:

book.print();


其中第一行创建Book实例的代码,其实是由以下两行化简而来:

Book *book=[Book alloc];
book=[book init];



然后,说说创建Book类。在xcode中:



然后,选择创建objc class:



会自动创建book.h和book.m,前者是头文件,后者是实现代码。

在头文件中:

#import <Foundation/Foundation.h>

@interface Book : NSObject {
    NSString *name;
}

@property(retain) NSString *name;
-(void) print;

@end



给Book类增加一个name变量,NSString类型的。

声明它的set、get方法。记住要加retain,除非用自动垃圾回收。因为是为写ios程序做演示,因此手工内存释放。这里要用retain,为对象引用计数加1。

Book的实现代码

#import "Book.h"

@implementation Book

@synthesize name;

-(void) print{
    NSLog(@"书名:%@",name);
}

@end



这里要写@synthesize,对应头文件中的@property,另外,增加了一个print方法,打印日志。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马