简单谈谈对Object C的理解
2015-07-22 22:51
435 查看
oc中的 .m文件(即#implementation 类#end)中,主要是对.h声明文件夹中声明的方法进行实现;
实现这些方法分为:-实例方法和+类方法;以-/+区分;
实例方法: 面向对象设置的声明的方法; 目的是实现对象的自身的属性和功能;
既然根据类来 实例化对象;(类是众多对象抽象出来的)
;那么在创建对象的时候; 1.站在类的角度去封装对象的功能: 即使一些功能,属性不是类所具有的:如果站在类的角度去思考,也是合理的;
2.面向对象,创建对象,初始化对象,对象在类的成员变量区域中可含有变量,也可含有成员方法(组合类);
3.成员方法的初始化;在重写initWith构造器的时候要注意给该组合类分配空间();因为对对象;对类的操作都是在
堆空间完成的;在Class *c=[[Class alloc ] init ];的过程中;并不对这个组合类分配空间;而成员变量在@property ;@synthesize初始化属性的时候'
存在栈中的自动变量;根据自动变量的特性,系统会在初始化变量的,在前面隐式的写一条赋值语句,即分配空间(看c和指针-静态存储和动态存储);
.h--- 实例化方法 -(void)print;无参数,无返回类型
-(BOOL)isUpper;有返回类型,无参数;()括号内的BOOL型即返回类型
-(void)isLower:(NSString *)a ;无返回类型,有参数;
-(BOOL)isLower:(NSString *)a;有返回类型;有参数 //常用
-(Person *)countAge:(Person *);
主要就第四种常用的发表一下看法,有返回意味着在创建完对象;
并对象完成初始化后,确认对象是安全的;调用该方法,给该传入需要的参数
思考时,一定要弄清调用主体self 和参数(NSString *)a的关系,计算过程;那么就一定能够返回相应的值;在main函数内创建相应返回类型的局部变量接收一下 就ok了;
.m文件: 新手要思考三个方面:1.调用主体对不对?为什么?
2.传入参数是什么?为什么?
3.函数功能实现什么功能,为什么?
再不然就是格式错了,声明方法名和实现方法名错了;
OC起步:熟练掌握格式的基础上;要建立面向对象的概念;实例方法(即消息)是类发送给对象(调用主体的)的;
在讲类方法:(类名 方法名 参数)
可以和成员变量同名;
不能操作成员变量;
如果不使用成员变量的方法可以使用类方法;
简单讲:就对事物的本质操作;增删改查
类很重要的一点是实例化对象初始化如果是不完全初始化,那么这个对象实现的功能;比真正意义上的本类对象要差很多;
不完全初始化;是对类的概念的缩小;类似对外隐藏其共性,强调特性;
过度初始化;扩展类的功能和属性;更强调其综合性;希望用他去实现丰富的功能;
严格意义上这些初始化的对象已经与类有偏移了,但是有了这些类,才更加丰富类的实现形式;对解决更多问题提供了可能性;
成员变量的权限在对外是@protected,对类方法是@private;如果要操作可以分条进行@public或者@package,@package介于@private和
@public之间;
码很多字,不码代码的人都很嫩; 实战为王;
实现这些方法分为:-实例方法和+类方法;以-/+区分;
实例方法: 面向对象设置的声明的方法; 目的是实现对象的自身的属性和功能;
既然根据类来 实例化对象;(类是众多对象抽象出来的)
;那么在创建对象的时候; 1.站在类的角度去封装对象的功能: 即使一些功能,属性不是类所具有的:如果站在类的角度去思考,也是合理的;
2.面向对象,创建对象,初始化对象,对象在类的成员变量区域中可含有变量,也可含有成员方法(组合类);
3.成员方法的初始化;在重写initWith构造器的时候要注意给该组合类分配空间();因为对对象;对类的操作都是在
堆空间完成的;在Class *c=[[Class alloc ] init ];的过程中;并不对这个组合类分配空间;而成员变量在@property ;@synthesize初始化属性的时候'
存在栈中的自动变量;根据自动变量的特性,系统会在初始化变量的,在前面隐式的写一条赋值语句,即分配空间(看c和指针-静态存储和动态存储);
.h--- 实例化方法 -(void)print;无参数,无返回类型
-(BOOL)isUpper;有返回类型,无参数;()括号内的BOOL型即返回类型
-(void)isLower:(NSString *)a ;无返回类型,有参数;
-(BOOL)isLower:(NSString *)a;有返回类型;有参数 //常用
-(Person *)countAge:(Person *);
主要就第四种常用的发表一下看法,有返回意味着在创建完对象;
并对象完成初始化后,确认对象是安全的;调用该方法,给该传入需要的参数
思考时,一定要弄清调用主体self 和参数(NSString *)a的关系,计算过程;那么就一定能够返回相应的值;在main函数内创建相应返回类型的局部变量接收一下 就ok了;
.m文件: 新手要思考三个方面:1.调用主体对不对?为什么?
2.传入参数是什么?为什么?
3.函数功能实现什么功能,为什么?
再不然就是格式错了,声明方法名和实现方法名错了;
OC起步:熟练掌握格式的基础上;要建立面向对象的概念;实例方法(即消息)是类发送给对象(调用主体的)的;
在讲类方法:(类名 方法名 参数)
可以和成员变量同名;
不能操作成员变量;
如果不使用成员变量的方法可以使用类方法;
简单讲:就对事物的本质操作;增删改查
类很重要的一点是实例化对象初始化如果是不完全初始化,那么这个对象实现的功能;比真正意义上的本类对象要差很多;
不完全初始化;是对类的概念的缩小;类似对外隐藏其共性,强调特性;
过度初始化;扩展类的功能和属性;更强调其综合性;希望用他去实现丰富的功能;
严格意义上这些初始化的对象已经与类有偏移了,但是有了这些类,才更加丰富类的实现形式;对解决更多问题提供了可能性;
成员变量的权限在对外是@protected,对类方法是@private;如果要操作可以分条进行@public或者@package,@package介于@private和
@public之间;
码很多字,不码代码的人都很嫩; 实战为王;
相关文章推荐
- Objective-C设计模式——适配器Adapter(接口适配)
- Objective-C学习笔记(五)——数据类型与限定词
- VBA createobject常用对象
- OC基础回顾(七)Foundation Kit 框架
- Objective-C学习笔记(四)——OC实现最简单的数学运算
- 第七天Object类和异常
- 【iOS开发之Objective-C】书签管理器项目
- Object类、JAVA的异常处理机制
- Java的Object类
- 第二周第三天([输入一个字符串,然后输出字符串的运算结果] [object][异常][IO流,读取D盘某个文件])
- Objective-C学习笔记(三)——用Objective-C编写第一个程序:Hello,World!
- asp:ObjectDataSource+asp:GridView 实现真分页
- 刨根问底Objective-C Runtime(4)- 成员变量与属性
- [学习笔记—Objective-C]《Objective-C-基础教程 第2版》第二章~第七章
- 刨根问底Objective-C Runtime(3)- 消息 和 Category
- 刨根问底Objective-C Runtime(2)- Object & Class & Meta Class
- 刨根问底Objective-C Runtime(1)- Self & Super
- NSObject 的实现分析
- Associative机制使用场景[objective-c有两个扩展机制:category扩展方法和associative扩展属性]
- 关于pch文件