热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ObjectC基础知识总结

Object-C基础知识总结1、Object-C与Cocoa的区别:Object-C是一门编程语言,Cocoa是一个函数库,类似于C#与.Net的关系2、-和+(1)-(v

 



Object-C
基础知识总结


1、Object-C与Cocoa的区别:Object-C是一门编程语言,Cocoa是一个函数库,类似于C#与.Net的关系

2、- 和 +


(1) -(void) Method: (int) fun

表示一个成员方法,通过类创建一个实例进行调用。


(2)+(void) Method: (int) fun

表示一个类方法,其他函数可以直接调用这个类中的方法,而不需要创建这个类的实例。(类似于C++的静态函数)

3、[]


[self Method: 1]

 Object-C 中通常说的“消息”,就是用于调用方法的。

4、成员变量和成员方法的访问




@interface Fraction: NSObject
{
int member1;
@public int menber2;
}
-(void) Method: (int) fun;
@end

 
Object-C中的成员变量使用了@public、@protected、@private作为访问修饰符,默认的@protected。Object-C中只用成员变量有访问修饰符,类变量、类方法、成员方法是没有访问修饰符的,所有的方法都是@public,所有的类变量都是@private。

5、方法实现与方法声明中的参数名不同,方法实现处经常使用参数名缩写

 在方法中,本地变量(参数、方法中定义的变量)在名称冲突的情况下,会隐藏成员变量,因此导致赋值变成无意义的操作。这种情况可以使用self关键字,写出self->variable
= variable.

6、不在XX.h文件中声明的方法是一种变相的私有化,这个方法依然可以被调用。只是在编译时会受到一个警告。

7、




-(id) init
{
if(self = [super init])
{
  .......
}
return self;
}


 把[super
init]的返回值赋值给self,由于Object-C是动态语言,所以init方法很可能会返回一个不是当前类型的返回值,也可能是另一个类型的。因此为了保证程序能够正常工作,需要把父类的init方法产生的返回值赋予给self,让self指向父类init方法返回的对象,然后从能开始其他操作。

8、方法含有多个参数

(方法的数据类型) 方法名称: (参数1数据类型) 参数1名称 参数2标签: (参数2数据类型) 参数2名称 参数3标签: (...) .....

9、CF、CA CG、UI等开头的接口

CF:Core Foundation
CA:Core Animation
CG: Core
Graphics
UI:iPhone的User Interface

 

转:http://www.cnblogs.com/davidzhou11225/archive/2012/05/23/2514714.html


Object-C 基础知识总结,布布扣,bubuko.com


推荐阅读
  • 本文详细介绍了PHP中的几种超全局变量,包括$GLOBAL、$_SERVER、$_POST、$_GET等,并探讨了AJAX的工作原理及其优缺点。通过具体示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 使用 ModelAttribute 实现页面数据自动填充
    本文介绍了如何利用 Spring MVC 中的 ModelAttribute 注解,在页面跳转后自动填充表单数据。主要探讨了两种实现方法及其背后的原理。 ... [详细]
  • 本文由chszs撰写,详细介绍了Apache Mina框架的核心开发流程及自定义协议处理方法。文章涵盖从创建IoService实例到协议编解码的具体步骤,适合希望深入了解Mina框架应用的开发者。 ... [详细]
  • 本文概述了在GNU/Linux系统中,动态库在链接和运行阶段的搜索路径及其指定方法,包括通过编译时参数、环境变量及系统配置文件等方式来控制动态库的查找路径。 ... [详细]
  • 本文介绍如何使用 Python 计算两个时间戳之间的时间差,并将其转换为毫秒。示例代码展示了如何通过 `time` 和 `datetime` 模块实现这一功能。 ... [详细]
  • 使用REM和媒体查询实现响应式布局
    本文介绍如何利用REM单位和媒体查询(Media Queries)来创建适应不同屏幕尺寸的网页布局。通过具体示例,展示在不同屏幕宽度下如何调整页面元素的样式。 ... [详细]
  • 本文详细对比了HashMap和HashTable在多线程环境下的安全性、对null值的支持、性能表现以及方法同步等方面的特点,帮助开发者根据具体需求选择合适的数据结构。 ... [详细]
  • 本文介绍了一种在 Android 开发中动态修改 strings.xml 文件中字符串值的有效方法。通过使用占位符,开发者可以在运行时根据需要填充具体的值,从而提高应用的灵活性和可维护性。 ... [详细]
  • 2023年1月28日网络安全热点
    涵盖最新的网络安全动态,包括OpenSSH和WordPress的安全更新、VirtualBox提权漏洞、以及谷歌推出的新证书验证机制等内容。 ... [详细]
  • selenium通过JS语法操作页面元素
    做过web测试的小伙伴们都知道,web元素现在很多是JS写的,那么既然是JS写的,可以通过JS语言去操作页面,来帮助我们操作一些selenium不能覆盖的功能。问题来了我们能否通过 ... [详细]
  • 本文介绍了一个来自AIZU ONLINE JUDGE平台的问题,即清洁机器人2.0。该问题来源于某次编程竞赛,涉及复杂的算法逻辑与实现技巧。 ... [详细]
  • egg实现登录鉴权(七):权限管理
    权限管理包含三部分:访问页面的权限,操作功能的权限和获取数据权限。页面权限:登录用户所属角色的可访问页面的权限功能权限:登录用户所属角色的可访问页面的操作权限数据权限:登录用户所属 ... [详细]
  • 本文介绍了用户界面(User Interface, UI)的基本概念,以及在iOS应用程序中UIView及其子类的重要性和使用方式。文章详细探讨了UIView如何作为用户交互的核心组件,以及它与其他UI控件和业务逻辑的关系。 ... [详细]
  • 实现Win10与Linux服务器的SSH无密码登录
    本文介绍了如何在Windows 10环境下使用Git工具,通过配置SSH密钥对,实现与Linux服务器的无密码登录。主要步骤包括生成本地公钥、上传至服务器以及配置服务器端的信任关系。 ... [详细]
  • 本文提供了一个关于AC自动机(Aho-Corasick Algorithm)的详细解析与实现方法,特别针对P3796题目进行了深入探讨。文章不仅涵盖了AC自动机的基本概念,还重点讲解了如何通过构建失败指针(fail pointer)来提高字符串匹配效率。 ... [详细]
author-avatar
小米和南瓜
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有