首页 > 其他 > 详细

OC - 类

时间:2014-03-22 08:20:37      阅读:176      评论:0      收藏:0      [点我收藏+]

这是OC第一节课,

:是一组具有相同特征和行为的食物的抽象      对象就是例的实例

类的定义分两部分:借口部分和实现部分,通常写在两个文件中

接口部分:声明了类名.父类名.实例变量(行为)

实现部分:方法的具体实现(具体行为)

接口跟实现分别放在.h和.m文件中,并且.m文件中必须实现,.h中声明的方法

PerPerson * p = [[Person alloc]init];

通过调用init方法为清空的内存重新赋值

OO(Object Oriented) 面向对象

OO(Object Oriented Programming)面向对象编程

main.m

#import <Foundation/Foundation.h>
//1.引用类的头文件
#import "Student.h"
#import "Teather.h"
#import "Cup.h"
int main(int argc, const char * argv[])
{
    //2.使用类 给对象分配内存空间
                                                                                                                                                                                                                                                                                                                       
  //[谁调用  方法名];
  Student * stu = [Student alloc];
                                                                                                                                                                                                                                                                                                                       
    //3.对 对象 初始化
                                                                                                                                                                                                                                                                                                                       
    stu = [stu init];
                                                                                                                                                                                                                                                                                                                       
    //类 *  对象  =
    Student * stu1 =[[Student alloc] init];
                                                                                                                                                                                                                                                                                                                       
    //利用 stu1对象 调用自身方法
    [stu1 study];
    [stu1 sleep];
                                                                                                                                                                                                                                                                                                                       
    Teather * ter = [[Teather alloc]init];
    [ter singing];
                                                                                                                                                                                                                                                                                                                       
    Cup * c = [[Cup alloc]init];
    [c drinking];
                                                                                                                                                                                                                                                                                                                       
    //实例变量被改变为public后,调用对象的实例变量
                                                                                                                                                                                                                                                                                                                       
    stu1->_name = @"深情君";
    NSLog(@"%@",stu1->_name);
                                                                                                                                                                                                                                                                                                                       
    return 0;
}



Student.h

#import <Foundation/Foundation.h>
@interface Student : NSObject{
                                                                                                                                                                                                                                                                                                                 
    //1.借口部分(所属的文件以.h结尾)
                                                                                                                                                                                                                                                                                                                 
    //实例变量的列表 类的特征列表
    @public
    NSString * _name;  //姓名
    NSString * _sex;   //性别
    int _age;          //年龄
                                                                                                                                                                                                                                                                                                                 
    //实例变量的使用:
                                                                                                                                                                                                                                                                                                                 
    //1.类的内部
    //在类的内部,所有方法 都必须在实现部分实现
                                                                                                                                                                                                                                                                                                                 
    //2.外部访问实例变量时,有坑监督的设置
    //三种访问权限(可见度)
    //@publec 公开的 表示实例变量可以 在外部 随意调用和改动
                                                                                                                                                                                                                                                                                                                 
    //@protected 受保护的表示实例变量不可以在外部呗调用和修改(OC默认)
                                                                                                                                                                                                                                                                                                                 
    //@private 私有的 不可以在外部被调用和改变
}
//类的行为列表
//方法列表(类的方法在接口部分,只是生命,不实现)
-(void) study; //学习
-(void) sleep; //睡觉
@end


Student.m

#import "Student.h"
@implementation Student
//实现部分:(.m文件)
//接口部分中的 所有方法 都必须在实现部分实现
-(void)study
{
                                                                                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                                                                                           
    _name = @"赵云龙";
    _age = 30;
    _sex = @"女W";
                                                                                                                                                                                                                                                                                                           
    NSLog(@"我在打球,%@ %d",_name,_age);
}
-(void)sleep
{
                                                                                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                                                                                           
 //   _name = @"伊泽瑞尔";
                                                                                                                                                                                                                                                                                                           
    _sex = @"爷们";
    NSLog(@"我在做梦");
}
@end


OC - 类,布布扣,bubuko.com

OC - 类

原文:http://8739847.blog.51cto.com/8729847/1381106

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!