`
rosylxf
  • 浏览: 20784 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

+号级别得成员方法实现

 
阅读更多

Demo:加号级别的成员方法的实现:

#import <Foundation/Foundation.h>

@interface Person:NSObject

{

      int _age;

}

-(id)initWithAge:(int)age;

+(id)personWithAge:(int)age;

-(void)print;

@end

 

@implementation Person

 

-(id)initWithAge:(int)age

{

      self = [super init];

      if (nil != self) {

         _age = age;

      }

      return self;

}

+(id)personWithAge:(int)age

{    //返回id类型和用到self是为子类考虑,子类继承Person,当调用该方法是返回的是子类的对象

      //+级别的方法中,一般用self

      id obj = [[self alloc] initWithAge:age];

      return [obj autorelease];

     

}

-(void)print

{

      NSLog(@"age = %d",_age );

}

@end

 

@interface Student : Person

@end

 

@implementation Student

@end

 

 

int main (int argc, const char * argv[]) {

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

     

      Person* p = [Person personWithAge:20];

      [p print];

     

      Student* stu = [Student personWithAge:30];

      NSLog(@"%@", NSStringFromClass([stu class]));

      [stu print];

  

    [pool drain];

    return 0;

}

 

分享到:
评论

相关推荐

    c++大作业++实现一个公司的人员和月薪管理系统.docx

    * 实现人员级别的提升功能 2.2 工程任务书: * 设计和开发一个公司的人员和月薪管理系统 * 实现人员信息的添加、删除和修改功能 * 实现月薪总额的计算和显示 * 实现人员级别的提升功能 三、技术路线 3.1 总体...

    C#实验三实验报告.doc

    在C#中,静态成员是指可以在类级别上访问的成员变量或成员方法,静态成员只能使用静态变量,不能使用实例变量。构造函数是一种特殊的成员方法,用于初始化类的实例对象。 在本实验中,我们使用静态方法Main来创建...

    《Java语言实验与课程设计指导》.doc

    + 技术点: 使用判断两个字符串是否相等的s1.equals(s2)方法实现图书信息的修改和删除功能。 实验例题索引(续) * 实验例题3-4: 图书业务类(BookManageLast) + 核心功能: 在图书业务类的基础上增加了按书名和...

    JAVA学习笔记.pdf

    static表示成员方法是静态的,abstract表示成员方法是抽象的,final表示成员方法不能被子类隐藏和覆盖,native表示成员方法是本地方法,strictfp表示成员方法中的浮点数运算必须遵守IEEE754标准,synchronized表示...

    Java方法继承、方法重载、方法覆盖小结.doc

    使用 `super` 关键字,可以访问父类的私有成员变量和方法,从而可以在子类中使用父类的实现。 多态 多态是 Java 编程语言的一种机制,允许一个引用类型的变量可以指向不同的对象,以便于提供不同的实现。多态可以...

    Visual C++实践与提高-COM和COM+篇『PDF』

    10.1.3 设置ActiveX控件的安全级别 10.1.3.1 修改注册表 10.1.3.2 使用IObjectSafety 10.1.4 ActiveX控件的数字签名 10.1.5 Active控件的使用许可 10.1.6 包装AcitveX控件 10.2 改造Ticker控件——例程IETickerCtrl ...

    Java典型模块

    13.2.2 实现窗口类——通过paint()方法 13.2.3 实现窗口类——通过双缓冲技术 13.3 知识点扩展——画图的基础知识 13.3.1 画图的基础知识 13.3.2 各种类型对象的绘制 13.4 小结 第14章 指针时钟项目(Swing组件+...

    DELL服务器磁盘阵列的扩容.docx

    联机容量扩充(OCE)可以通过两种方法实现:如果磁盘组中只有一个虚拟磁盘,而且还有可用空间可供使用,则可在可用空间的范围内扩充虚拟磁盘的容量;如果已创建虚拟磁盘,但虚拟磁盘使用的空间未达到该磁盘组大小的...

    【05-面向对象(下)】

    •抽象类的特征:有得有失,得到了新能力,可以拥有抽象方法;失去了创建对象的能力。 抽象类的作用 •抽象类代表了一种未完成的类设计,它体现的是一种模板。 •抽象类与模板模式。 接口的概念 ...

    人工智能-项目实践-信息管理系统-校园信息管理系统 C++

    2教工个人信息包括: 所属部门、工号、姓名、性别、出生年月、级别 工资计算方法如下: 教师:基本工资+课时课时补贴 行政人员:基本工资+行政补贴 教师兼行政人员:基本工资+课时课时补贴+行政补贴 退休人员:...

    软件设计模式作业实验代码+idea+Java 1. 某网上书店,用户购买图书可以积分,积分达到一定值后可以升级为银会员、黄金会员

    User 类具有 userName,userLevel,paidMoney 等成员和一系列 get/set 方法、BuyBook 方法;其他的会员类都具有CalcRealAmount 方法和 ChangeCredit,用来计算优惠之后的最终价格和兑换积分。此外,遇到双十一或者...

    数据仓库-关于数据仓库维度数据处理的方法探究系列

    这些分类和级别描述了一些相似的成员集合,用户将基于这些成员集合进行分析。(此概念引之于SQLServer2000联机帮助) 所有维度均直接或间接地基于表。当从某个表创建维度时,您会选择定义此维度的列。选择列的顺序至关...

    c#学习笔记——学习心得

    方法:是一种用于实现可以由对象或类执行的计算或操作的成员。类的方法主要是和类相关联的动作,它是类的外部界面,对于那些私有的字段来说,外部界面实现对它们的操作一般只能通过方法来实现。方法在类或结构中声明...

    LINQ入门及应用 10/13

     4.3 用于延期执行的Enumerable类方法成员  4.3.1 Take方法  4.3.2 TakeWhile方法  4.3.3 Skip方法  4.3.4 SkipWhile方法  4.3.5 Take、TakeWhile、Skip、SkipWhile小结  4.3.6 Reverse方法  4.3.7 Distinct...

    超级有影响力霸气的Java面试题大全文档

    最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。 Hashtable和HashMap采用的hash/rehash算法都大概...

    c语言学生成绩管理系统

    指导教师应积极引导学生自主学习和钻研问题,明确设计要求,找出实现方法,按照需求分析、总体设计、详细设计这几个步骤进行。 2. 编码调试阶段:根据设计分析方案编写C代码,然后调试该代码,实现课题要求的功能。 ...

    java-深入面向对象程序设计

    接口是 Java 中的一种抽象类,接口中有属性和方法,接口间可以形成继承关系,但接口中只包含常量和方法声明,没有变量和方法实现。接口的定义是 Java 的接口只定义了类中方法的原型,而没有直接定义方法的内容。

Global site tag (gtag.js) - Google Analytics