OC中,类的基础知识

都说编程语言只是一种工具,吃透一种语言,跨界去学习另一种语言,就简单很多。通过OC语言类的使用以及java语言的使用的对比,更好地去理解、掌握OC语言的基础知识。
什么是对象?
对象是抽象的,可以具体到某个人,某个事物。通常使用“特征”和“行为”去描述一个对象。例如本田飞度,1.5L的自然吸气发动机、魔术后排座椅、两厢制式等去描述,这样的一个实例,可以称作为一个对象。
什么是类?
类同样是一个非常抽象的概念。相对于“对象”,类则可以描述为:本田汽车。其特征为:本田车标,带有VTEC技术的发动机,FF的驱动方式等。具有相同特征的对象,则可以看作为一个类。
在java语言中,使用“class”去定义一个类,可以在类里,定义相应的参数以及方法。而在OC语言中,通过创建一个cocoa项目,来添加一个类。创建一个类,将得到两个文件,以“Student”为类,就有Student.h和Student.m。
在OC语言中,类是由接口(interface)和实现(implementation)构成。具体代码如下:
//interface部分:
#inmport <Foundation/Foundation.h>
@interface Student : NSObject
{
    @public  //定义一下实例变量是公共的。
    //特征部分
    NSString *name;
    NSInteger age;
    NSInteger age2;
    NSString *hobby;
}
//行为部分
-(void)sayHello;
-(void)eatLunch;

以上代码,用于定义相应的实例变量以及方法。
其中,@public定义属性为公共的。@protected定义属性为受保护的,只有该类以及子类都可以调用。@privated则定义属性为私有的,只能在该类进行调用。
而”-“则将方法定义为实例方法,”+”则定义为类方法。

//implemetation

#import "Student.h"
@implemetation
-(void)sayHello{
    NSLog(@"Hello!I'm %@,I'm %d years old,I like %@",name,age,hobby);
}
-(void)eatLunch{
    if(age2 >age){
        NSLog(@"I have no time");
    }
    else{
        NSLog(@"I am free");
    }
}

以上代码则是接口文件的写法。通过Import “Student.h”,调用interface中定义的属性以及方法,最后通过main函数给属性赋值,调用实现方法,最后得到运行结果。

在主函数中,创建对象,完成对象的声明,内存分配,初始化。

Student *stu = [[Student alloc]init];
Student *stu = [Student new];

以上两种创建对象的方法都可以。

引用对象的变量以及方法的语法:
对象名->实例变量名 = 具体值

stu->name = Gene;

在OC语言中,类的实现,通过接口文件(interface)去定义实例变量以及方法,通过实现文件(implemetation)去定义实现方法。最后通过主函数创建对象、赋值,调用方法,得出最后的结果。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值