一.ios实例变量的可见度
可见度是修饰实例变量的
可见度决定了 实例变量的可视范围
//ios中可见度可以分为4类,最常用的只有3类
//@public //公有
//@protected //保护(默认) (仅自己及子类可见)
//@private //私有 (仅自己可见)
//@package(不常用)
//OC语言不同于其他语言
,OC不允许在栈里面定义对象
.只能在堆里创建对象
.栈里定义一个指针去接收堆里的对象
(其实存储的是首地址
)
//在
IOS中
,对象永远存在于堆中
.想要使用对象
,只能通过指针去访问
二. 创建对象分两步:
//1. 开辟内存空间( 会清0)//2.为清0的区域赋上相应的初始值.
// AudiCar *car = [[AudiCar alloc] init];//类的实例化,或者说是创建对象
// AudiCar *car1 = [[AudiCar alloc] init];
// NSLog(@"-----%@",car);
// PhoneClass *phone = [[PhoneClass alloc] init];//类的实例化,或者说是创建对象
// Cup *cup = [[Cup alloc] init];
//在OC里使用[]调用方法,方法写在后面,调用者写在前面,+方法用类名调用,-方法用对象调用.
//补充:alloc方法的功能 与 calloc函数的功能一样.
三. self和@
//@
表示OC
独有,C
没有.
//self(表示地址) : 谁调用self , self 就是谁
//self 是一个隐含参数.
//如果在一个实例方法里面调用该类的其他实例方法,则消息的接受者必须是self.
//%@用于打印对象,不仅仅是打印字符串.
四. 其他
除了
C
语言学的基本类型
(int float char double BOOL)
之外
,
其他类型都带
*
//@interface 和 @end 用来 表示类的声明
//声明 我是一个什么类,我的父类是谁 我有哪些特征(成员变量, ios中称为实例变量) 我有什么行为(方法)
//NSLog 是OC中得打印函数.与printf类似
//NSLog 已经自带换行的功能,除了打印I'm running之外,还会打印出来当前的时间 程序名称 线程编号等信息