1. 关于Objc中函数调用类比

[_lblHelloWorld setHidden:![_lblHelloWorld isHidden]];

类比为: _lblHelloWorld.setHidden(!(_lblHelloWorld.isHidden()));

Tip: objc中的boolean值为YES和NO,而不是True or False

-(void) helloWorld:(BOOL)isHelloWorld{}

类比为: public void helloWorld(bool isHelloworld){}

Tip: 前面带有减号(-)的方法为实例方法,必须使用类的实例才可以调用。对应的有+号,代表类的静态方法,不需要实例化即可调用

2. 消息:向对象发送消息。

消息是iOS的运行环境特有的几只,和C++和Java上类类似,但机制上有很大的差别。

[object message:param1 withParameter:param2]

NSString *string;

string = [[NSString alloc] initWithString:@“Hello”];

类比为:

object.message()

object.message(param1,param2)

string *str;

string = new string(“Hello”);

3. import方法

#import “Class.h”

#import <Class.h>

#import <director/Class.h>

和C下的include方法相似

4. Property 和 Synthesize

Property定义:@property声明用于自动创建property属性变量的getter和setter

Synthesize定义:@Synthesize声明实现了property属性变量的geetter和setter

例如:

在interface: @property dataType variableName

在implementation: Synthesize variableName

5. 头文件中的方法

-(returnType)method

-(returnType)method:(dataType)param1

-(returnType)method:(dataType)param1 withParam:(dataType)param2

类比为:

returnType method()

returnType method(param1)

retrunType method(param1,param2)

6. 关于self:指向自己的指针

[self method];

类比为: self.method();

7. 继承关系和接口实现

ClassA:PraentA

ClassA:PraentA<Protocol>

ClassA <Protocol>

类比为:

ClassA extends ParentA

ClassA extends ParentA implements interface

ClassA implements interface

8. 空指针

id obj = nil;

NSString *hello = nil;

nil相当于java里的null

9.id:objective-c中的id和C++里的(void*)类似

最新文章

  1. Java白皮书的关键术语
  2. 爱上MVC~为Html.EditorForModel自定义模版
  3. bug0
  4. 计划将项目中使用entity framework的要点记录到改栏目下
  5. 从高版本JDK换成低版本JDK报错Unsupported major.minor version 52.0
  6. cJSON_hacking
  7. 学习使用:before和:after伪元素
  8. Hex、bin、axf、elf格式文件小结
  9. Windows phone 之Socket
  10. Java Annotation 必须掌握的特性
  11. jQuery验证框架 .
  12. php variance
  13. UNIX基础--用户和基本账户管理
  14. mysql、mysqli、pdo使用
  15. .NET 通用高扩展性的细粒度权限管理架构(webApi/Mvc)
  16. (转)mysql 无法设置外键的原因总结
  17. putty怎么用?如何使用Putty远程管理Linux主机
  18. rabbitMQ的安装和配置(一)
  19. SpringMVC系列之(二) springMVC和Struts异同
  20. laravel-elasticsearch 全文搜索设置

热门文章

  1. shell中单引号和双引号
  2. Linux 下安装 jdk压缩包
  3. centos6.5 安装cmake 3.3.2
  4. C#的UDP服务器
  5. C语言 1 &lt;&lt; 0 是什么意思
  6. 【随笔】vmstat性能监测
  7. FMDB基本应用
  8. json+servlet+ajax
  9. xtrabackup工具安装
  10. 国内从事GIS行业的公司及其网址