1.类
1)类名
2)属性
3)方法(功能)
2.面向对象 解决问题的思路:
1)明确要解决的具体问题
2)根据问题找 对象
3)使用 类 描述一个对象(1.类名 2.属性 3.方法)
4)把类转换成代码
3.###一个完整的类有”类的声明 + 类的实现 ” 两部分组成###
4.类的声明:
@interface + 类名 : NSObject
{
声明成员变量(类的属性): (成员变量 ,实例变量 ,字段 这三个都指成员变量)
float size; 成员变量前面加 ‘’下划线
float _cpu;
double _ram;
}
声明方法:方法用函数封装起来
没有返回值,不带参数的方法,没有参数,直接写”;” 分号
-(void) callPhone; 函数前面加 ‘-’下划线
-(void) sendMessage; 返回的类型用 (void) 小括号 括起来
有返回值 有参数的函数:
方法名由”冒号+标签组成”
要求:标签要对参数进行说明
-(int)sumAndSquareNumber1:(int)number1 andNumber2:(int)number2 (多个参数依次类推)
@end
5.类的实现
@implementation + 类名
-(void) callPhone
{
NSLog(@“拨通电话中….”);
}
-(void) sendMessage
{
NSLog(@“老师快下课吧!”);
}
@end
6.类中数据的改变和操作只能通过 指针变量 来简洁的操作访问该变量
new 表示创建了一个IPhone类型的对象,并对这个对象进行初始化
且在堆内存中开辟了一块对象大小的空间
[IPhone new] 这个表达式返回的是这块内存区域的内存地址
iPhone *p1 = [IPhone new]
p1->_size
p1->_cpu
p1->_ram
7.类中函数的调用通过 “ [ ] ” [行为执行者 行为的名称] 对象来执行某项行为
[p callIPhone ]
[p sendMessage ]
8.一个类 的属性里面可以包含其他类
//拥有一只狗
Dog *_dog1; //拥有的属性 dog1指向一个类
//在属性中拥有一个一个类属性 需要用指针指向
9.字符串
//OC字符串的使用
//定义一个OC字符串, 是NSString *类型的
NSString *str = @"wo shi tiancai"; 字符串是 NSString * 类型的
//如何打印输出一个OC字符串 字符串占位符为 %@
NSLog(@"%@", str);