Object-C 基础学习(二)
2016-04-23 19:56
525 查看
OC也是一门面象对象编程的语言,与java一样,OC也不支持多重继承,java的最顶层的父类是Object,OC最顶层的父类则是NSObejct,OC的类分为两个文件,一个声明变量与方法的头文件和一个实现了方法的.m文件。
类的声明以@interface开头以@end结尾,继承与java的extends标示符不一样,OC以:后面跟的类表示继承的父类
方法的声明以“-”符号开头的表示是对象的方法,以“+”开头的表示类方法,java中以static关键字声明一个静态方法为类方法
后面的(void)表示方法返回的数据类型,(NSString)表示返回NSString数据类型;学过java的再来看OC的方法声明一开始会有点晕菜,java声明一个方法的语句例子为:
private void setColor(int color)
这是传一个参数的,对应的OC语法为
-(void)setColor:(int)color;
声明只有带一个参数的还比较好理解
接下来看两个参数的
java:
private void setColor(String text, int color)
OC:
-(void)setColor:(NSString) text color:(int)color
java的传两个参数和传一个参数没有多大区别,OC多个参数一开始看了就懵了,和C或者java的完全不一样,OC注重的是代码读起来的连贯性,换个角度重新声明一下
-(void)setText:(NSString)text withColor:(int)color;
这样看起来就简单明了多了,跟英语的语句一样,set text with color,所以它的方法名并不是参数前的那个词就是方法名,个人理解它的方法名其实是一个句子,一个可以用来描述它这个方法所实现功能的句子。
// // Circle.h // HelloWord // // Created by huangzhebin on 16/4/23. // Copyright © 2016年 huangzhebin. All rights reserved. // #import <Foundation/Foundation.h> @interface Circle : NSObject { @private int color, width, height; } -(void) setColor:(int) color; -(void) setWidth:(int) width; -(void) setHeight:(int) height; -(float) addNumber1:(float)num1 toNumber2:(float)num2; -(void) setString:(NSString*)test withColor:(int)color; @end
类的声明以@interface开头以@end结尾,继承与java的extends标示符不一样,OC以:后面跟的类表示继承的父类
方法的声明以“-”符号开头的表示是对象的方法,以“+”开头的表示类方法,java中以static关键字声明一个静态方法为类方法
后面的(void)表示方法返回的数据类型,(NSString)表示返回NSString数据类型;学过java的再来看OC的方法声明一开始会有点晕菜,java声明一个方法的语句例子为:
private void setColor(int color)
这是传一个参数的,对应的OC语法为
-(void)setColor:(int)color;
声明只有带一个参数的还比较好理解
接下来看两个参数的
java:
private void setColor(String text, int color)
OC:
-(void)setColor:(NSString) text color:(int)color
java的传两个参数和传一个参数没有多大区别,OC多个参数一开始看了就懵了,和C或者java的完全不一样,OC注重的是代码读起来的连贯性,换个角度重新声明一下
-(void)setText:(NSString)text withColor:(int)color;
这样看起来就简单明了多了,跟英语的语句一样,set text with color,所以它的方法名并不是参数前的那个词就是方法名,个人理解它的方法名其实是一个句子,一个可以用来描述它这个方法所实现功能的句子。
相关文章推荐
- 关于用ObjectInputStream遍历读取文件中的对象,如何判断到达文件末尾
- Object-C 和 lua的相互调用
- iOS-Effective Objective-C 2.0 读书笔记(一)
- javascript系列学习----Creating objects
- object-c 快速学习篇
- 五、TypeScript 接口
- 说说 Objective-C 里的 @()字面量语法
- TypeError: 'WebElement' object is not iterable
- Objective-C 类别(category)和扩展(Extension)
- OBJ-C NSString类介绍及用法学习笔记
- OBJ-C对象的存储细节学习笔记
- Java并发之线程间协作Object的wait()、notify()、notifyAll()
- warning: could not load any Objective-C class information. This will significantly reduce the qualit
- HashMap中的put(Object key, Object value)方法实现
- Jquery Deferred objects
- JavaScript Objects in Detail
- HashMap中get(Object key)方法实现
- Objective-C Json格式数据解析
- Objective-C 借助第三方库解析XML格式数据
- Swift中与Objective-C的区别 -> 值类型和引用类型