黑马程序员Objective-C笔记:类

            ------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

一.类的组成

  1. 类的声明:保存在.h文件中,用于声明对象的属性(成员变量)和方法。使用关键字@interface 和 @end
  2. 类的实现:保存在.m文件中,用于实现声明过的方法。使用关键字@implementation 和 @end

二.类名

  1. 类名的第一个字母必须大写
  2. 不能有下划线
  3. 多个英文单词,用驼峰标识

三.类的声明:成员变量和方法

  1. 成员变量的作用域有四种情况

  • @public:在任何地方都可以直接访问,可以让外部的指针间接访问对象内部的成员变量
  • @protect:可以在当前类以及子类的实现@implementation中直接访问,不能在main函数中访问(默认的)
  • @pravite:只能在当前类的实现@implementation中直接访问,但是在子类中依然有这个成员变量,只能间接访问
  • @package:同一个体系内(框架)可以访问,介于@privete和@public之间。
注意:
  1. 什么都不写,默认是@protect
  2. 写在实现中的成员变量(在声明中没有写)默认是私有的的@private,即使写@public也是私有的 。这是因为只包含.h头文件,不会包含.m文件,所以在.m实现中的成员变量是私有的,编译器在编译时,不包含.m文件,也就看不到.m实现中定义的成员变量,所以不认识,也就不能直接访问
  3. @implementation中不能定义和@interface中一样的成员变量
  4. 默认情况下初始化是0

   2.方法

  • +开头的是类方法,例如+(void)run;
  • -开头的是对象方法,例如-(void)run;

四.类的声明

#import 
       
       
        
           //包含主头文件,因为后面用到了NSobject

@interface Person : NSObject      //在这里冒号表示继承,让person继承NSobject的目的是让Person这个类具备创建对象的能力
{
    // 这里声明属性(默认情况初始化是0),成员变量必须写在大括号里面
    @public   //声明成员变量的作用域
    int age;
    char *name;
}
// 这是一个对象方法的声明,只有Person对象才可以调用
- (void) eat;  //对象方法的声明写在大括号外面
@end

       
       

五.类的实现

#import "Person.h"    //包含.h头文件,拥有类的声明

@implementation Person
// 这是一个对象方法的实现,只有Person对象才可以调用
- (void)eat
{
    NSLog(@"姓名:%s, 年龄:%d", name, age);
}
@end




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值