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*)类似

Objective-C与C style语言的简单类比的更多相关文章

  1. 李洪强漫谈iOS开发[C语言-042]-简单计算器

    李洪强漫谈iOS开发[C语言-042]-简单计算器

  2. 谁说C语言很简单?

    前两天,Neo写了一篇<语言的歧义>其使用C语言讨论了一些语言的歧义.大家应该也顺便了解了一下C语言中的很多不可思异的东西,可能也是你从未注意到的东西. 是的,C语言并不简单,让我们来看看 ...

  3. Linux 用C语言实现简单的shell(2)

    不知不觉两周没有发文了,因为“一万美金的福特奖学金答辩”,ACM比赛,网络论文阅读和网络大作业一大堆事把时间冲散了,所以先写一篇博文补上之前一坑. 之前发了一篇关于linux 用C语言实现简单shel ...

  4. Java语言实现简单FTP软件------>FTP软件主界面的实现(四)

    首先看一下该软件的整体代码框架                        1.首先介绍程序的主入口FTPMain.java,采用了一个漂亮的外观风格 package com.oyp.ftp; im ...

  5. Java语言实现简单FTP软件------>源码放送(十三)

    Java语言实现简单FTP软件------>FTP协议分析(一) Java语言实现简单FTP软件------>FTP软件效果图预览之下载功能(二) Java语言实现简单FTP软件----- ...

  6. Java语言实现简单FTP软件------>上传下载管理模块的实现(十一)

    1.上传本地文件或文件夹到远程FTP服务器端的功能. 当用户在本地文件列表中选择想要上传的文件后,点击上传按钮,将本机上指定的文件上传到FTP服务器当前展现的目录,下图为上传子模块流程图 选择好要上传 ...

  7. C语言,简单计算器【上】

    由于工作需要最近在研究PHP扩展,无可避免的涉及到了C语言.从出了学校以后C语言在实际工作中还没有用到过,所以必须要先进行一点复习工作.个人认为对于熟悉一样东西说最好的方法是上手实践.于是便想起了当时 ...

  8. 用c语言实现简单的五子棋

    用c语言实现简单的五子棋 这个小游戏是从零开始的实现的,框架灵感来自于小游戏<走迷宫>. 游戏代码配置: 二维数组+简单逻辑+getch读取键盘+windows函数(刷屏,改颜色,改窗口大 ...

  9. 008_用go语言实现简单的冒泡排序

    冒泡排序是各个语言中的基本排序算法,本次我们用go语言实现简单的冒泡排序 package main import "fmt" // [13,10,5,7,2] // [10,13, ...

随机推荐

  1. arm64 boot

    http://www.wowotech.net/linux_kenrel/arm64_initialize_1.html

  2. const实现

    [const实现]

  3. jsp学习--基本语法和基础知识

    一.JSP简单介绍 1.什么是JSP? JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP这门技术的最大的特点在于 ...

  4. 高并发访问mysql时的问题(一):库存超减

    如果在对某行记录的更新时不采取任何防范措施,在多线程访问时,就容易出现库存为负数的错误. 以下用php.mysql,apache ab工具举例说明: mysql表结构 CREATE TABLE `yx ...

  5. javascript 高级程序设计 十二

    1.组合使用原型模式和构造函数模式: 由于原型模式创建对象也有它的局限性------有智慧的人就把原型模式和构造函数模式进行了组合. function Person(name, age, job){/ ...

  6. [C#-SQLite] SQLite一些奇怪的问题

    今天整C#的DAO层,我用的2013, 用的4.0的.NetFramework刚刚创建完Helper就出现异常 +        Connection    "helper.Connecti ...

  7. ue4 SNew背后的逻辑

    ue4的ui库Slate体系非常庞大,即使是在创建对象这一小事上,也是相当复杂: SLATECORE_API TSharedRef<SWidget> SNullWidget::NullWi ...

  8. SQL分页查询结果不一致

    今天遇到了SQL分页查询结果不一致的情况,一看代码,原来是没加排序查询!!分页查询最好加排序,且以唯一性高的字段进行排序,如ID,时间等,以保持每页查询结果的准确! PS:又帮别人擦屁股!!

  9. C/C++字符串函数之复制函数

    突然发现对字符串函数缺乏系统的了解,所以花了一点时间专门整理下,在此记录之,以方便自己及有需要的人使用. C/C++字符串函数的头文件:string.h 复制函数主要有4个,如下: 1.char * ...

  10. CSS3中的Transition属性详解(贝赛尔曲线)

    transition语法: transition : [<'transition-property'> || <'transition-duration'> || <'t ...