总结:
        在oc中,我们要整出一个类来,首先需要一个.h头文件和一个.m实现文件。一般我们创建的类都继承了根类,因为根类帮我们实现了很多实用的方法,而类里面会有变量(属性) 、函数(方法),与其它语言一样,oc中方法同样分为静态方法(类方法)和实例方法," + "表示类方法, " - "表示实例方法。
     
        .h头文件为声明,没有实际的实现内容,具体实现应该在.m实现文件中编写。类方法不能使用实例变量,但可以直接类调用,实例方法则可以直接使用实例变量并赋值却不能直接类调用,须实例化,一般实例化的同时都需要进行初始化。

操作实例变量需要通过set、get方法,set方法的命名必须以set开头+实例变量名(首字母需要大写), 形参使用实例变量名且两者数据类型一致,通常在实例变量前加下划线" _ "进行区分,set方法没有返回值; get方法命名采用实例变量名,无下划线" _ ",无参数,但有返回值,数据类型应与实例变量一致。 当然public的实例变量是可以直接访问的,但应考虑到数据安全。

注:写了set、get方法之后,在调用时,可以使用中括号形式调用,也可以用点调用。另外也可利用@property属性和@synthesize简化实例变量的存取器方法。

        常用的对象初始化方法也有以下两种:

一:因为继承了根类,所以子类不需要在.h文件中再声明,可直接在.m文件中重写父类初始化init方法。

二:直接在.h中声明方法initWithName并带形参,再在.m文件中实现,最后在创建对象的时候再赋值。这样可以衍生出拥有不同参数的初始化方法,这样以后需要用哪个初始化方法就可以随意用。

创建对象初始化:

这里test.rStr调用的是返回姓名的方法。

OC随笔一:类的更多相关文章

  1. oc中的类学习笔记1

    1.oc中的类和构造方法 NSAutoreleasePool * pool =[[NSAutoreleasePool alloc] init]; NSAutoreleasePool是一个类,alloc ...

  2. OC -- 第一个类

    OC -- 第一个类 类名:Car 属性:轮胎个数.时速 行为:跑 完整写一个类:类的声明和实现 1.    类的声明 代码: // NSObject 再Foundation框架中 #import & ...

  3. OC学习5——类和对象

    1.OC是在C语言基础上进行扩展得到的一门面向对象的程序设计语言,它也提供了定义类.成员变量和方法的基本功能.类可以被认为是一种自定义的数据类型,使用它可以定义变量,所有使用类定义的变量都是指针类型的 ...

  4. OC - 时间日期类NSDate

    OC - 时间日期类NSDate //NSDate 时间日期类 NSDate 二进制数据流 { //1.获取当前时间 零时区的时间 //显示的是格林尼治的时间: 年-月-日 时:分:秒:+时区 NSD ...

  5. OC开发系列-类与对象

    面向对象 面向对象思想是一种解决问题的思想, 不在是面向过程的去思考问题怎样解决.面向对象解决问题时首先要考虑需要找几个对象能解决这个问题. 常见的概念: * Object Oriented 面向对象 ...

  6. OC第一节 —— 类和对象

    一.类和对象的概念 1.1类 自己的定义: 具有相同或相似性质对象的抽象. 1.2 对象 自己的定义: 对象是人们要进行研究的任何物体,从最简单的整数到复杂的飞机 等均可以看做是对象. 举例说明: 类 ...

  7. oc随笔二:组合、继承

    在oc中如果没有使用ARC的话,手动管理内存一定要注意处理好“野指针”,通常我们在释放指针的指向的地址时,都要将指针赋值为nil,这样能有效的防止野指针.常用的关键字:retain.assign .s ...

  8. iOS开发-OC语言 (二)类的设计

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Helvetica } p.p2 { margin: 0.0px 0.0px 0.0px 0. ...

  9. Scala学习随笔——深入类和对象

    函数化对象(又称方程化对象)指的是所定义的类或对象不包含任何可以修改的状态. 本篇随笔就是着重记录函数化对象.定义了一个有理数类定义的几个不同版本,以介绍 Scala 类定义的几个特性:类参数和构造函 ...

随机推荐

  1. ubuntu 下telnet 操纵memcache 实现

    memcache作为一款优秀的进程外缓存,常常被运用于高并发系统架构中.这里主要谈谈怎么通过telnet工具,查看memcache运行状况并对其key进行管理维护.假设memcache安装目录:/us ...

  2. 简单代码JS随机,数组操作,延时执行

    <script language="javascript"> var str="baidu.com,163.com,sohu.com,kankan.com,1 ...

  3. IOS APP IDs

    感谢分享 说下 APP ID 的组成为  APP ID Prefix + APP ID suffix APP ID Prefix 为10个字符  你不用管它 APP ID Suffix  这个有点讲究 ...

  4. Eric Pement的单行awk命令收集

    超实用的. awk1line_zh-CN.txt 可惜中文版的网址好像不能访问了.. HANDY ONE-LINE SCRIPTS FOR AWK 30 April 2008 Compiled by ...

  5. 可以供MFC调用的,QT实现的DLL(使用qt-solutions的qtwinmigrate实现)

    MFC和QT的消息循环机制不同,所以,要让QT写的DLL可以供MFC调用,要做一点特殊的处理 #include <qmfcapp.h> #include <qwinwidget.h& ...

  6. php 读取 word

    ---恢复内容开始--- 首先安装com扩展: php.ini php.ini 确保有此语句 [PHP_COM_DOTNET] extension=php_com_dotnet.dll   php.i ...

  7. #翻译# 深入JavaScript的Unicode难题(上)

    退一步说, JavaScript处理Unicode时有些怪异. 这篇文章会说明JS在Unicode上令人痛苦的部分, 然后提供解决方案, 并说明在未来的ECMAScript6中是如何改善这些问题的. ...

  8. 黑马程序员_Java集合框架

    集合类 1,为什么出现集合类? 面向对象语言对食物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式. 2,数组和集合类同是容器,有何不同? 数组 ...

  9. codeforces284 div1 B:概率dp

    蛋疼的期末..好久没有A题了,,惭愧啊 昨晚打起精神准备做cf 结果竟然忘记注册了..拿学长号看了看题,今早起来补了一道dp 题目大意: 有n首歌,你需要边听边猜 对于第 i 首歌 每听一分钟你猜出它 ...

  10. codeforces257 div2 D最短路条数

    题意: 给一个无向图,总共有 n个点,m+k条边,给定点所连的k条边可以选择删除 问最多删除多少条可以保持该定点到其他点的最短路不变 题解: 从定点出发做单元最短路 首先如果定点到某个点的最短路小于 ...