[TwistedFate]面向对象编程、类和对象、实例变量操作
2015-10-31 10:14
344 查看
1.Objective-C简称OC,扩充⾃C语⾔的⾯向对象编程语⾔。
是OS X和iOS操作系统的主要编程语⾔
2.OC的输出方法NSLog,比C语言的printf多一个换行
3.@符 是OC关键字的标志
C语言基本数据类型 int float char
OC常用基本数据类型
NSInteger 整型
CGFloat 浮点型
NSString 字符型
4.OC中定义实例时,如果有*,就代表是一个对象,;格式化输出,只要是对象就可以用占位符%@来输出
5.用类实例出一个对象:
(1).分配内存(堆区开辟空间 需要管理的)
(2).对对象进行初始化
6.(1)减号方法(实例方法)(对象方法)适用对象来调用
(2)加号方法(类方法) 使用类名来调用
创建一个对象
instancetype 表示返回一个对象类型,相当于C语言中的void * 无类型指针 可以转化为任何类型的指针,而id表示一个对象类型 (相比较 instancetype, id可以用来声明一个对象使用)
.h接口文件
// 重写初始化方法 重写的是父类的方法
// 重写的话 一定要跟父类的方法名字一样 返回值一样 参数一样 只有方法的实现不一样
// 初始化方法实现
9.复合:
本类中有 其他类的一个对象 作为实例变量
是OS X和iOS操作系统的主要编程语⾔
2.OC的输出方法NSLog,比C语言的printf多一个换行
3.@符 是OC关键字的标志
C语言基本数据类型 int float char
OC常用基本数据类型
NSInteger 整型
CGFloat 浮点型
NSString 字符型
4.OC中定义实例时,如果有*,就代表是一个对象,;格式化输出,只要是对象就可以用占位符%@来输出
5.用类实例出一个对象:
(1).分配内存(堆区开辟空间 需要管理的)
(2).对对象进行初始化
6.(1)减号方法(实例方法)(对象方法)适用对象来调用
(2)加号方法(类方法) 使用类名来调用
// OC使用中括号来调用方法
创建一个对象
Person *per = [Person alloc]; // 连着写 Person *per1 = [[Person alloc] init]; // new方法相当于 开辟空间并初始化 Person *per2 = [Person new];
instancetype 表示返回一个对象类型,相当于C语言中的void * 无类型指针 可以转化为任何类型的指针,而id表示一个对象类型 (相比较 instancetype, id可以用来声明一个对象使用)
.h接口文件
@interface Person:NSObject { // 中间部分写声明或者实例变量(特征)行为的声明 // 添加一个OC关键字进行修饰 表明实例变量的可见度 @public // @public关键字 代表公开的意思 // 声明的实例变量(特征)要写一个大括号 // 只要是特征 名字下要加下划线 NSString *_name; // 姓名 NSString *_sex; // 性别 NSInteger _age; // 年龄 }
// 重写初始化方法 重写的是父类的方法
// 重写的话 一定要跟父类的方法名字一样 返回值一样 参数一样 只有方法的实现不一样
// 自定义初始化方法声明 - (instancetype)initWithName:(NSString *)name sex:(NSString *)sex age:(NSInteger)age;
// 初始化方法实现
- (instancetype)initWithName:(NSString *)name sex:(NSString *)sex age:(NSInteger)age { // 对实例变量(特征)进行赋值 _name = name; _sex = sex; _age = age; // 需要一个返回值 // self关键字 在本类中 表示本类的对象 return self; }
9.复合:
本类中有 其他类的一个对象 作为实例变量
相关文章推荐
- c++中各个数据类型的大小
- 在servlet中实现页面跳转
- c++中各个数据类型的大小
- Designing Efficient Algorithms [Examples]~F - City Game
- 什么是CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI?
- php manual中的可修改范围
- C语言之统计输入字符数量
- C语言之统计输入字符数量
- PHP开发提高效率技巧
- Django RestFramework源码剖析(2)———Viwe是自带分页的
- 进击的KFC:OC概述、面向对象编程、类和对象、实例变量操作
- Django RestFramework源码剖析(1)——设定不同的serializer
- CTP报单状态 OrderStatus全部状态
- asp.net在IIS环境中访问第三方需数字证书接口时 报 “请求被中止: 未能创建 SSL/TLS 安全通道”
- 使用Memory Analyzer Tool(MAT)Eclipse插件分析内存泄露
- Spring(1)--helloworld
- 【《zw版·Halcon与delphi系列原创教程》 zw_halcon人脸识别
- php 字符串式非关联数组循环
- eclipse编写的GBK项目转变成UTF-8编码
- 深入理解Java Proxy机制(转)