方法重写分为全部重写和部分重写,重写都不用在子类.h文件里声明,因为在父类里,默认初始化都已经声明过了。
-(id)init默认初始化重写不用在子类的.h文件里再次声明,因为在它的父类里声明过;部分重写在子类.m文件里相应方法里,首先写上 [ super 父类名 ];先继承父类全部功能,根据需要加上自己的功能。 && isKindOfClassisNumberOfClass之前导入了#import “ superMan ”
#import “ Man ” (superMan是Man的子类) superMan *sup =[[ superMan alloc ]init ] ;
判断当前对象sup是否属于Man类及其Man的子类
[ sup isKindOfClass : [ Man class] ] ; 值为1
判断当前对象sup是否属于Man类
[ sup isKindOfClass : [ Man class] ; 值为0
2实例方法,类方法
-(void)shili;实例方法定义功能的时候可以访问属性,+(void)number;类方法不能访问属性类方法是工具方法,可以自己把用的一些代码功能,封装到类方法,类方法里还区分有工厂方法,工厂方法可以再访问属性,和实现其他父类功能[ UIcolor Yellow ];工厂方法属于类方法的一种,书写规范,工厂方法后面的命名一般和类名相关,好区分。 工厂方法可以封装一些功能,&&工厂方法一般情况都要有返回值,用他的时候找到相应的变量接住&&工厂方法一般是用来创建对象的
&& 假如要取一个随机数,用工厂方法,可以 +(int)suijishu { } 主函数里 int a =[ 类名 工厂方法名 ]; 工厂方法在类文件.m里实现是返回一个随机数 (可以根据需要实现其他功能) &&如果是不用工厂方法得到随机数,必须要先用类名创建一个对象,然后alloc init,之后对象在调用相应的实例方法
方法重写分为全部重写和部分重写,重写都不用在子类.h文件里声明,因为在父类里,默认初始化都已经声明过了。
-(id)init默认初始化重写不用在子类的.h文件里再次声明,因为在它的父类里声明过;部分重写在子类.m文件里相应方法里,首先写上 [ super 父类名 ];先继承父类全部功能,根据需要加上自己的功能。 && isKindOfClassisNumberOfClass之前导入了#import “ superMan ”
#import “ Man ” (superMan是Man的子类) superMan *sup =[[ superMan alloc ]init ] ;
判断当前对象sup是否属于Man类及其Man的子类
[ sup isKindOfClass : [ Man class] ] ; 值为1
判断当前对象sup是否属于Man类
[ sup isKindOfClass : [ Man class] ; 值为0
2实例方法,类方法
-(void)shili;实例方法定义功能的时候可以访问属性,+(void)number;类方法不能访问属性类方法是工具方法,可以自己把用的一些代码功能,封装到类方法,类方法里还区分有工厂方法,工厂方法可以再访问属性,和实现其他父类功能[ UIcolor Yellow ];工厂方法属于类方法的一种,书写规范,工厂方法后面的命名一般和类名相关,好区分。 工厂方法可以封装一些功能,&&工厂方法一般情况都要有返回值,用他的时候找到相应的变量接住&&工厂方法一般是用来创建对象的
&& 假如要取一个随机数,用工厂方法,可以 +(int)suijishu { } 主函数里 int a =[ 类名 工厂方法名 ]; 工厂方法在类文件.m里实现是返回一个随机数 (可以根据需要实现其他功能) &&如果是不用工厂方法得到随机数,必须要先用类名创建一个对象,然后alloc init,之后对象在调用相应的实例方法
- 点赞
- 收藏
- 分享
- 文章举报
ly199121发布了6 篇原创文章 · 获赞 0 · 访问量 91私信关注