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

ZT Objective C 入门诗,iPhone程序结构

阅读更多

C没有类
这让人很疲惫
对象的说法很时髦
不就是继承封装组合人人会
右走是C++,这个大众都熟悉它
左走就是objective-c,躲在僻静僻静的麦金塔
本是同根生的C
如何高举面向对象的大旗
求同存异标新立异且听一一细分清

对象的C
是不同的C
类的处理与众不同重点要区分

不重复是我的口头禅
任何时候我只说一次告诉你我的地盘
    [@begincommand] | @end就是我的指示
        @interface classname  声明类
        @implementation classname  实现类
        @protocol interfacename  声明接口
就是这么简单,你的一定要明白

我先声明对成员变量和方法的关系有远近
    成员变量大大括在我的怀
        关系远近 public / protected / private 来区分
        若不声明全默默受着保护
        静态成员变量请不要放在此
    成员方法我不太爱
        前面拴着绳子置于类的变量列表外
            减号就是普通函数
            加号就是静态函数莫怪
        函数的声明有点怪
            我要一眼叫出名,包括函数名和参数名
            其余的类型括起来,我有空再来慢慢看
            函数名和参数名之间用:分隔开
        多个参数的函数那就是更怪
            逗号其实不是我的爱
            后续的每个参数分隔用空白
            每个参数形式如 标签:(参数类型)参数名
            其实只要把函数名看作是第一个参数标签
            你就能领悟其中的奥妙并在调用时喜爱
        成员方法太多我才懒得区分亲疏远近
            它们一律都是公之于众要好好的干活
            谁若不服胆敢出头犯上
            就踢出头文件打入冷宫永世不能露面试试看
        所有的成员方法都是虚函数
            改则重载,不改就继承
            不用任何标记请放心大胆随便使用

对象的类,在继承层次上考虑才显得重要
    所有的类最终都继承于NSObject
        因为它给你创建自己生命的方法

    不继承于NSObject的只能是接口protocol
        它没有成员变量只有方法
        它只有声明不用实现
        这点和java很相似

当然类还有一些绝活可以让你开开眼
    可以动态的扩充一个类 而不总是用继承
        @interface CClassA(Category)|@end
        @implementation CClassA (Category)|@end
        源代码外包含该 类的头文件
        就可以使用该Category中的方法

也可以动态的替换一个类
    但是只限于用继承类来替换基类功能
        [CInheritClass poseAsClass: [CBaseClass class]];
    声明之后用基类创建的对象实际上行为都是继承类

所以一个类的完整声明如下:
    @interface CClassA(Category): CBaseClass<IA,IB...>
    类别,基类,接口一一具全
    加上静态 虚函数
    所有特性和C++均可对应
    再加上所独有的特性
    这一特性编译类语言很少有
    设计得当完全可以实现动态调用dll切换功能

类的定义和使用,也有点怪
    想想看一个对象的生命周期,该是如何办
        创建很是别扭
            这样就定义了一个类对象,
            CClassName* pA = [[CClassName alloc] init];
            能且只能返回对象指针
    释放分为两种
        自动释放声明后 [pA autorelease]; 以后可以不管
        否则就必须配对 [pA release];
    注意类的构造函数init可以捕获
    但是析构函数却没有这点很让人意外

    使用类也有多种情况
        调用成员方法用中括号     int nRtn = [pA method:param1];
        而静态成员方法不需要对象 int nRtn = [CClassName method];
        调用成员变量还是C格式    pA->m_nCount = 1;

    所有的类,都可以对应一个id类型
        用来引用一个对象               id     cur = sq;
        或者用来引用一个对象指定的接口 id<IA> cur = sq;
        然后就可以调用该对象的方法和指定接口方法

分享到:
评论

相关推荐

    zt411-zt421-ug-zhcn_ZT411/ZT421_斑马打印机手册_

    斑马打印机ZT411和ZT421是工业级条码和标签打印机,广泛应用于制造业、物流、零售业等对打印质量和效率有高要求的领域。这两款打印机以其出色的性能、耐用性和易用性赢得了用户的信赖。这份中文手册详细地介绍了ZT...

    Zebra ZT230 条码打印机驱动

    斑马(Zebra)ZT230条码打印机是一款广泛应用在工业环境中的高效设备,其驱动程序是确保打印机正常工作的重要组成部分。本驱动程序专为Zebra的ZT210、ZT220及ZT230系列打印机设计,提供了全面的功能支持,以实现高...

    ZT213/ZT213LEEA规格书V2.10-低功耗RS232多通道USB收发器/驱动器芯片手册

    《ZT213/ZT213LEEA:低功耗RS232多通道USB收发器/驱动器芯片详解》 ZT213/ZT213LEEA是一款专为低功耗应用设计的RS232多通道USB收发器和驱动器芯片,广泛应用于数据通信、工业控制、物联网设备等领域。本文将深入...

    ZT7548 Datasheet Rev.1.0.3.pdf

    ZT7548是一款第五代电容式触控屏幕控制器,支持30x18或18x30的通道配置,可以同时检测最多10个触点。该控制器能够与最多8个键与TSP(触控屏面板)或FPC(柔性印刷电路板)模式一起工作,在多点触控时无扫描率下降的...

    ZT410打印机IP地址设置网络打印机

    ZT410打印机IP地址设置网络打印机ZT410打印机IP地址设置网络打印机ZT410打印机IP地址设置网络打印机ZT410打印机IP地址设置网络打印机ZT410打印机IP地址设置网络打印机

    斑马打印机(ZT210).docx

    斑马打印机ZT210是一款专业的工业级条形码和标签打印机,广泛应用于物流、零售、医疗等行业的标签制作。以下是对如何设置和使用斑马ZT210打印机的详细步骤: 首先,我们需要安装电脑驱动。双击下载好的驱动程序文件...

    证通ZT598金属键盘开发资料.rar

    1. **Header Files**:头文件,定义了接口函数和数据结构,供开发者在程序中引用。 2. **Library Files**:库文件,实现了接口的具体功能,开发者在编译时链接这些库。 3. **Sample Code**:示例代码,演示如何使用...

    斑马打印机ZT210用户指南

    "斑马打印机ZT210用户指南" 本用户指南旨在为Zebra ZT210/ZT220/ZT230打印机的用户提供操作和维护指南,该设备是一种工业级的条码打印机,具有高速打印、高速处理和高质量打印输出等特点。 版权信息 本手册的版权...

    斑马zt410中文库

    斑马(Zebra)ZT410是一款先进的桌面级条码打印机,被广泛应用于物流、零售、医疗、制造业等多个行业。这款打印机以其高效、耐用和易于操作的特点深受用户喜爱。"斑马zt410中文库"指的是为ZT410打印机特别设计的中文...

    斑马Zebra ZT510 驱动下载安装.exe

    斑马Zebra ZT510 驱动下载安装 使用中有任何问题可以关注并私信,如果资源对您有帮助记得关注收藏好评哟!

    zt-exec-1.9-API文档-中文版.zip

    赠送jar包:zt-exec-1.9.jar; 赠送原API文档:zt-exec-1.9-javadoc.jar; 赠送源代码:zt-exec-1.9-sources.jar; 赠送Maven依赖信息文件:zt-exec-1.9.pom; 包含翻译后的API文档:zt-exec-1.9-javadoc-API文档-...

    斑马ZT510打印机驱动文件

    斑马ZT510打印机驱动文件

    1523C(GT338C GT339C GT336C FC932C ZT326C)-3358.rar

    标题中的"1523C(GT338C GT339C GT336C FC932C ZT326C)-3358.rar"指的是一个RAR格式的压缩文件,其中包含了与征途品牌的多个型号电子狗(行车安全预警仪)相关的数据。这些型号包括GT338C、GT339C、GT336C、FC932C...

    ZT210 230加载介质和碳带

    《ZT210 230加载介质和碳带》 在条形码和标签打印领域,Zebra公司的ZT210和ZT230打印机是广泛应用的设备,以其可靠性和效率赢得了广大用户的青睐。这两个型号的打印机都属于入门级工业级条码打印机,适用于各种商业...

    RS485通信芯片zt13085e的原理图库和PCB库

    RS485通信芯片ZT13085E是一种常用的工业级串行通信接口芯片,主要用于构建远程、多节点的通信网络。在工业自动化、楼宇自动化、物联网设备等领域有广泛应用。ZT13085E的设计目标是提供一种高效、可靠的数据传输方式...

    zt-exec-1.9-API文档-中英对照版.zip

    赠送jar包:zt-exec-1.9.jar; 赠送原API文档:zt-exec-1.9-javadoc.jar; 赠送源代码:zt-exec-1.9-sources.jar; 赠送Maven依赖信息文件:zt-exec-1.9.pom; 包含翻译后的API文档:zt-exec-1.9-javadoc-API文档-...

    禅道数据表结构

    ### 禅道数据表结构解析 #### 一、禅道数据表结构概览 禅道是一款集成项目管理工具,其强大的功能背后依赖于一系列的数据表来存储与管理各项信息。通过对禅道的数据表结构有深入的理解,可以更好地进行系统的二次...

    zebra ZT400系列打印机技术手册

    ### zebra ZT400系列打印机技术手册 #### 知识点概述: 1. **版权及法律声明**:Zebra ZT400系列打印机技术手册的版权及相关软件固件的所有权归属ZIH Corp.及其许可证持有者,未经授权复制会受到法律制裁。 2. **...

Global site tag (gtag.js) - Google Analytics