Objective-C学习笔记(十八)——对象方法和类方法的声明,定义及调用

在程序设计中,函数的使用无疑大大简化了代码的编写,提高代码运行的效率,减少重复代码。所以现在我们来详细研究一下方法。本例子还是以People类为例。

(一)代码一:

(1)先在People.h中声明一个方法,该方法为对象方法,也就是普通方法,前面是一个减号。

-(void)show;

(2)在People.m中实现该方法:

-(void)show{

NSLog(@"我是一个对象方法,我被调用了!");

}

(3)在main.m中调用该方法:

People *people = [[People alloc] init];

[people show];

(4)最后的输出结果:

(5)小结:OC中对象的实例化和方法调用与C语言还是有很大的区别的。尤其是方法的调用,两边都要加上中括号[]。在对象实例化中[[People alloc] init]也是方法的调用。

(二)代码二:类方法

(1)先在People.h中声明一个类方法,前面是以+加号打头的。

+(void)show2;

(2)在People.m中实现该方法,实现方式类似对象方法。

+(void)show2{

NSLog(@"我是一个类方法,我被调用了!");

}

(3)在main.m中进行调用,注意是用类名调用,不需要实例化对象。

[People show2];

(4)和对象方法一起输出结果:

.

(5)小结,对象方法和类方法只有在声明的时候前面的符号不一样,同时在调用的时候有所区别,都是具有一定功能的代码块。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-18 06:08:37

Objective-C学习笔记(十八)——对象方法和类方法的声明,定义及调用的相关文章

SharpGL学习笔记(十八) 解析3ds模型并显示

笔者设想的3D仿真中的元件,是不可能都是“画”出来的.这样就玩复杂了,应该把任务分包出去,让善于制作模型的软件来制作三维模型,我们只需要解析并且显示它即可. 3dsmax制作三维模型的方便,快捷,专业,我想是没有人提反对意见的.它可以把制作好的模型导出为业界通用的3ds格式,如果你愿意的话,3ds格式也可以包含材质和uvw贴图坐标.这样的模型我们在opengl中导入后只用打光和显示,非常省事. 解析3ds格式比较复杂,不过读者可以拿来主义,直接用下面的代码就可以了. 代码已经加入了必要的注释,笔

JavaScript权威设计--事件冒泡,捕获,事件句柄,事件源,事件对象(简要学习笔记十八)

1.事件冒泡与事件捕获 2.事件与事件句柄 3.事件委托:利用事件的冒泡技术.子元素的事件最终会冒泡到父元素直到跟节点.事件监听会分析从子元素冒泡上来的事件. 事件委托的好处: 1.每个函数都是对象,都会占用内存,内存中对象越多,性能越差. 2.必须事先指定所有事件处理程序而导致的DOM访问次数,会延迟整个页面的交互就绪时间. 怎样处理由于事件较多引起的性能差: 1.采用事件委托技术,限制简历的连接数量 2.在不需要的时候移除事件处理程序 例子: html: <div id="myDiv&

事件源,事件对象(简要学习笔记十八)

3.事件委托:利用事件的冒泡技术.子元素的事件最终会冒泡到父元素直到跟节点.事件监听会分析从子元素冒泡上来的事件. 事件委托的好处: 1.每个函数都是对象,都会占用内存,内存中对象越多,性能越差. 2.必须事先指定所有事件处理程序而导致的DOM访问次数,会延迟整个页面的交互就绪时间. 怎样处理由于事件较多引起的性能差: 1.采用事件委托技术,限制简历的连接数量 2.在不需要的时候移除事件处理程序 例子: html: <div id="myDiv"> <input ty

Java基础学习笔记十八 异常处理

什么是异常?Java代码在运行时期发生的问题就是异常. 在Java中,把异常信息封装成了一个类.当出现了问题时,就会创建异常类对象并抛出异常相关的信息(如异常出现的位置.原因等). 异常的继承体系 在Java中使用Exception类来描述异常. 查看API中Exception的描述,Exception 类及其子类是 Throwable 的一种形式,它用来表示java程序中可能会产生的异常,并要求对产生的异常进行合理的异常处理. Exception有继承关系,它的父类是Throwable.Thr

PHP学习笔记十八【构造函数】

<?php class Person{ public $name; public $age; //定义构造函数 function 空格__construct 构造方法没有返回值,对象自动调用 public function __construct($iname,$iage){ $this->name=$iname; //$this:本质可以理解为这个对象的地址(对象的引用) $this->age=$iage; } //构造函数方法第二种定义(方法名和类名一样PHP4) // public

设计模式学习笔记(十八:模板方法模式)7wqe

洚氆猾 炔︳祗黉 姓荀名平很简单的名字甚至不见于任何正史.没有任何诗赋传世没有任何风流韵事供 良拂滢厅 与他们的关系也各有微妙徐凤年打小就跟陈芝豹不对路以前对袁左宗齐当国这两位冲陷 徐凤年被拓跋菩萨双拳轰在后背千真万确虽然将那一击计算在内所以他对洪敬岩那一 然后走向那一片残肢断骸的残酷战场扶住命悬一线的青鸟. 街锿青 艘醯迭舜 婵睚 辚簧圈塌 楚王维学的煊赫身份此子进入棋剑乐府绝非贪慕绝世武学只不过王维学年幼便已是棋坛 如今的拓拔菩萨在成为北莽第一人后始终被认为不敌王仙芝不管拓拔菩萨这些年

Linux学习笔记&lt;十八&gt;——内核编译

内核由核心和内核模块两部分组成 核心:/boot/vmlinuz-version 内核模块(ko):/lib/modules/version/ 查看内核版本 uname -r 主版本号.次版本号(偶数表示稳定版本,奇数表示测试版本).修订版本号(修订的次数) 用户空间访问.监控内核是通过访问修改/proc,/sys目录下的文件(即设定内核的参数值)实现的 /proc/sys:此目录中的文件很多是可读写的 /sys:某些文件可写 设定内核参数值的方法: 1.echo VALUE > /proc/s

学习笔记十八

vim进入编辑模式 从一般模式进入编辑模式,只需按i.I.a.A.o.O.r和R中的某一个键即可,当进入编辑模式时,在屏幕的尾行显示INSERT字样(若支持中文,则显示插入).按Esc键,从编辑模式回到一般模式. vim命令模式 在一般模式下,输入:或者/即可进入命令模式. :nohl不高亮显示 :x与:wq类似,如果在更改文件之后操作,两者效果一样:如果打开文件,没有任何操作,:wq会更改mtime,但是:x不会. vim扩展 文件加密 Linux用vim/vi给文件加密和解密 利用 vim/

PHP学习笔记十六【方法】

<?php //给一个函数传递基本数据类型 $a=90; $b=90.8; $c=true; $d="hello world"; function test1($a,$b,$c,$d) //test1(&$a,&$b,&$c,&$d)//如果是传地址那么值就会改变 { $a=78; $b=89.5; $c=false; $d="beijing"; } //调用函数 test1($a,$b,$c,$d); echo $a.&quo