AI智能
改变未来

蓝懿iOS 面向对象三大属

方法重写分为全部重写和部分重写,重写都不用在子类.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私信关注

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 蓝懿iOS 面向对象三大属