XCode中创建第一个类 -记录学习过程


首先 小字体部分可以忽略,学习要从简单的开始,也就是由简到繁,这里我们创建的项目是基于控制台的,没有多余的代码容易理解。

之所以写这么简单的东西,是因为这是我刚学到的,算是复习一下,但我觉得简单也有写的必要,像对我这样一

个刚刚接触苹果系统环境和开发环境的人来说,还是要看查找很多的才能写出自己的第一个类,我们这里主要

说的是如何创建一个类的步骤,错误不当的地方在所难免,希望指正, 以免误解大家。

首先


点击dock中Xcode(这里版本为4.3.3)应用,



上图中Welcome to Xcode 下有 Create a new Xcode project 点击一下创建新项目


 


选择项目类型,这里我们选择 基于mac OS X 系统下的控制台程序 点击next




这里我们输入项目的名称 MyFirstClass 然后和公司标示 这里注意了type 选择Foundation  这样我们就可以使用平台提供的大量的类 这个应该和java的基础包差不多 

这样我们就看到了 我建立的项目

项目下面有三个文件包 一个和项目名称一致 还有两个固定的 frameworks 这里是存放 支持框架的文件 类似java中jar文件 这里是foundation.framework 也就是我们在创建项目

时 最后一个步骤中type 选项中选择的结果,另外一个就是products 存放可以运行的程序

在MyFirstClass文件夹下面有个main.m 文件,这个文件中我们可以看到main 函数 也就是程序的入口函数,代码已经为我们写好了 直接运行会出现

Hello, World!


新建一个类 使用快捷键 command + N 



选择Object-C class 点击next



输入类名 Student 然后选择父类 NSObject  点击next 选择要类文件存储的位置


以下是代码部分

声明类的.h文件

1
2
3
4
5
6
7
8
9
10
11
12
13
#import < Foundation /Foundation.h>
 
@interface Student : NSObject
{
     int age;
     NSString *name;
}      
-(void)show;
-(void)setAge:(int)a;
-(NSString*)name;
-(void)setName:(NSString*)n;
-(NSString*)getName;
@end


  实现类的.m文件 

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
#import "Student.h"
 
@implementation Student
 
-(void)show
{
     
     NSLog(@"我的名字:%@,我的年龄:%i",name,age);   
     NSLog(@"会不会调用 setter 方法呢???");   
     self.name=@"";//这种方式等价于 [student setName:""]; 所以这里会调用 setName 方法 getter 没有类似的作用
 
}
-(void)setAge:(int)a
{
     age=a;
}
-(void)setName:(NSString *)n
{
     NSLog(@"会调用啦" );   
     name=n;
}
-(NSString*)name
{
     NSLog(@"会调用name" );
     return name;
}
-(NSString*)getName
{
     NSLog(@"会调用getName" );
 
     return name;
}
@end

调用代码


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#import < Foundation /Foundation.h>
#import "Student.h"
 
 
int main(int argc, const char * argv[])
{
      
     @autoreleasepool {
         NSString *info = @"hello ,World!";
         
         // insert code here...
         NSLog(@"%@",info);
          
         Student* student = [[Student alloc] init];
         [student setName:@"Zhengcp"];
         [student setAge:24];
         [student show];
         student.name = @"zheng";
         NSLog(@"%@",student.name);
        
     }
     
     return 0;
}


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值