类和对象
来源:互联网 发布:linux执行sh脚本 编辑:程序博客网 时间:2024/04/27 10:07
OC 将C繁琐的语法封装起来更为简单----封装
在C语言的基础上新增一些面向对象----面向对象
买电脑: 10000 iOS确定型号 买电脑直接买 不注重如何实现
笔记本电脑熟悉的避免
面向对象---带钱买买买
吃饭面向过程 ---种菜,收菜,洗菜,,,,,
面向过程,
代码中遇到和过程的对象
面相过程:遇到一个需求,实现每一步,都是自己写代码一步步的实现,
面相对象:遇到一个需求,不要亲自去实现,而是找一个专门做这个事情的人来搞定
面向过程缺点:后期维护和修改不方便
面向对象再后期的维护和修改更加的方便和快捷
当遇到一个需求的时候,不要亲自去实现
1.先看看有没现成的人专门做这个事情的----框架。如果有直接使用,如果没有,就自己制造个拥有这样功能的人(可以重复多次滴使用)
对象:对象是生活中的一个具体存在,看得见,摸得着,拿过来就可以用,
类:物以类聚,物以群分 类是一群具有相同特征或者行为的事物,一个统称,不能直接使用。
类是没有办法直接使用的,只能去找到这一类事物当中的一个具体存在,然后才能使用这个具体存在
食物:类苹果,米饭等能吃的统称
水果:类制定的某些统称为
苹果:类
烟台苹果:类
小明早上吃的那个苹果----对象,具体的纯在
对象在某一类中取出的 对象在类中取出的类中有什么,对象就会有什么,类是母版,嘞的对象,是从某版中创建出来的,功能不多不少
模子上有啥 月饼上就会有啥,月饼可以吃,所以对象可以使用 模子上是类,月饼是类
如何设计一个类:
类的作用:用来描述一群具有相同特征和行为的事物。
设计类的三要素:1这类事物叫什么名字 2这类事物具有相同的特征,这些类拥有什么 3这些食物具有共同的行为,会什么会做什么
如何找到类:
名词提炼法:分析下整个业务流程,分析下出现的名词,就是这些的类
3辆坦克发射6枚导弹击中3架飞机
坦克类:特征,大小,颜色,重量,材质,射程
行为:行驶,发射
炮弹:型号大小,威力,颜色,重量等
行为:飞,爆炸
小明在公交车上牵着一只叼着热狗的狗------人类,公交车,热狗,狗
现有类,还是现有对象
1.现实的角度,先又对象再有类
代码的角度,是先有类,才有对象,
位置:直接写在源文件中,不要写在main函数之中
语法:类的定义,分为两部分,类的声明和实现
类的声明
@interface 类名:NSObjective {
这个类具有的共同的特征,讲他们定义为变量
}
功能就是1一个方法,讲方法的声明写在这里
@end
类的实现
@implementation 类名
讲方法的实现写在这里
@end
类肯定是有声明和实现的
类名用你描述的事物的明明就可以了首字母大写
定义在{}中的用来表示这类事物的共同的特征的变量,我们叫做属性----成员变量-----实例变量-----字段
类是无法直接使用的。如果非要使用这个类,就必须找到这个类中某个具体的存在---对象,再使用这个对象。
类和对象的关系:类中有的东西,这个类的对象也有,不会多也不会少,对象就可以使用,这个时候,我们就可以使用对象里面的东西。
如果创建一个累的对象
语法: 类名 *对象名 = 【类名 new】;
Person *gaofei = [Person new];
根据这个Person这个类的模板,创建了一个对象的名字叫gaofei
gaaofei对象的特征;1可以直接使用,勒种定义的东西,这个对象也有,不会多,也不会少
如何使用对象:
如何访问对象的属性:默认情况下,对象的属性,是不允许外界直接访问的,
如果允许对象的属性可以被外界访问,那么就声明一个@public
访问对象的属性方式
对象名->属性 =值
(*对象名)。属性名
*/
#import <Foundation/Foundation.h>
@interface Student :NSObject
{
@public
NSString *_name;
int _age;
int _yuwen;
int _shuxue;
int _yingyu;
}
@end
@implementation Student
@end
@interface Person : NSObject
{
@public
NSString *_name;
int _age;
float _height;
}
@end
@implementation Person
@end
int main(int argc,const char * argv[]) {
@autoreleasepool {
Student *s1 = [Studentnew];
s1->_age =123;
s1->_name =@"校花";
s1->_shuxue =99;
s1->_yingyu =88;
NSLog(@"%d---%d----%d-----%@",s1->_age,s1->_shuxue,s1->_shuxue,s1->_name);
Person *gaofei = [Personnew];
(*gaofei)._age =12;
// gaofei->_name = @"Jack";
// gaofei->_age = 12;
// gaofei->_height = 20;
NSLog(@"%d\n",gaofei->_age);
}
return0;
}
- 【面向对象】对象和类
- 面向对象--类和对象
- 面向对象(类和对象)
- 面向对象-类和对象
- 面向对象----类和对象
- 类和对象
- vfp对象和类
- 类和对象
- Chap02:类和对象
- 类、对象和方法
- C#类和对象
- 第一章 类和对象
- 类和对象
- 对象、类和结构
- 类和对象
- 类和对象
- 类和对象
- 类和对象
- hibernate做查询操作出现更新问题:
- css3
- MySQL-5.7.18 release版安装指南
- window系统之path路径
- 排序算法之简单选择排序
- 类和对象
- Activity的启动模式及应用场景
- 系列:iOS开发-VC生命周期
- 4 Springboot中使用redis存储集合数据,并模拟条件查询、分页读取
- Python知识点总结
- 排序算法之希尔排序
- .net 开发日志
- Mac sftp 设置使用公钥认证
- 飞得更高(五)下马威