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)小结,对象方法和类方法仅仅有在声明的时候前面的符号不一样。同一时候在调用的时候有所差别,都是具有一定功能的代码块。
github主页:https://github.com/chenyufeng1991 。欢迎大家訪问。
Objective-C学习笔记(十八)——对象方法和类方法的声明,定义及调用的更多相关文章
- python3.4学习笔记(十八) pycharm 安装使用、注册码、显示行号和字体大小等常用设置
python3.4学习笔记(十八) pycharm 安装使用.注册码.显示行号和字体大小等常用设置Download JetBrains Python IDE :: PyCharmhttp://www. ...
- Java8学习笔记(八)--方法引入的补充
在Java8学习笔记(三)--方法引入中,简要总结了方法引入时的使用规则,但不够完善.这里补充下几种情况: 从形参到实例方法的实参 示例 public class Example { static L ...
- (C/C++学习笔记) 十八. 继承和多态
十八. 继承和多态 ● 继承的概念 继承(inheritance): 以旧类为基础创建新类, 新类包含了旧类的数据成员和成员函数(除了构造函数和析构函数), 并且可以派生类中定义新成员. 形式: cl ...
- JavaScript权威设计--事件冒泡,捕获,事件句柄,事件源,事件对象(简要学习笔记十八)
1.事件冒泡与事件捕获 2.事件与事件句柄 3.事件委托:利用事件的冒泡技术.子元素的事件最终会冒泡到父元素直到跟节点.事件监听会分析从子元素冒泡上来的事件. 事件委托的好处: 1.每个函 ...
- Java基础学习笔记十八 异常处理
什么是异常?Java代码在运行时期发生的问题就是异常. 在Java中,把异常信息封装成了一个类.当出现了问题时,就会创建异常类对象并抛出异常相关的信息(如异常出现的位置.原因等). 异常的继承体系 在 ...
- python 学习笔记十八 django深入学习三 分页,自定义标签,权限机制
django Pagination(分页) django 自带的分页功能非常强大,我们来看一个简单的练习示例: #导入Paginator>>> from django.core.p ...
- PHP学习笔记十八【构造函数】
<?php class Person{ public $name; public $age; //定义构造函数 function 空格__construct 构造方法没有返回值,对象自动调用 p ...
- Python3学习笔记十八
1. MTV M: model 与数据库相关 T: Template 与html相关 V: views 与逻辑相关 一. URL配置 启动:python ...
- Java学习笔记十八:Java面向对象的三大特性之封装
Java面向对象的三大特性之封装 一:面向对象的三大特性: 封装 继承 多态 二:封装的概念: 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访 ...
随机推荐
- java 解析 XML实例
package com.hseact.fecp.servlet; import java.io.IOException; import javax.xml.parsers.DocumentBuilde ...
- CSDN问答频道“华章杯”11月排行榜活动开始,丰厚奖品等你拿
CSDN问答频道月度排行榜,是CSDN问答频道从3月开始举办的活动,旨在鼓励更多用户参与提问和解答,创造一个良好的互帮互助氛围,使参与者在问和答的过程中得到技术水平的提升,也希望大家能在技术交流中结交 ...
- 解决LayoutItem lable 太长的问题
<Style TargetType="dxlc:LayoutItem"> <Setter Property="AddColonToLabel" ...
- 数字签名算法(C#)
public static string GetSHA1Method(string strSource) { string strResult = ""; //Create Sys ...
- CentOS 服务器安全设置
我们必须明白:最小的权限+最少的服务=最大的安全.所以无论是配置任何服务器,我们都必须把不用的服务关闭.把系统权限设置到最小化,这样才能保证服务器最大的安全. 一.注释掉系统不需要的用户和用户组 ...
- android 如何连真机测试
1. 设置android手机为USB调试模式.步骤: menu---> 设置 ---> 应用程序 ---> 开发 , 选择[USB调试] 2. 用USB连接手机和电脑,并确保成功.步 ...
- MVC 之 <%%>相关内联代码块用法
1.<%@ ... %> 添加引用; 2.<% ... %> <%%>之间可以执行服务端代码,如<% foreach (DataRow dataRow in ...
- OpenCV 视频处理框架
OpenCV 本身集成了 FFmpeg,因此对于视频是有解码和编码功能的.尽管其效率在本人看来还不能跟未被封装的FFmpeg相提并论,然用其来对视频进行解码得到图像,然后对图像进行处理并将得到的图像又 ...
- 深入理解索引系列1:B+树
- 【Oracle】迁移含有BLOG类型的字段的表
日常数据库迁移过程中,发现dmp文件中的表,如果表含有blog类型的字段,无法进行迁移. 以下是我迁移含有blog类型字段表的经验分享' 使用PLSQL Developer进行导出 接着选择需要导出的 ...