OC与C语言相比,体现的是一种面向对象的思想。OC完全兼容C语言

OC中大多数类前面都有前缀NS,来源于乔布斯NextStep团队,被苹果收购后保留了所有基本语法,合并到Foundation中

OC语言以.m为文件后缀

OC中绝对多数类继承自 NSObject  OC是单继承(可以使用协议来达到多继承的效果)

一、关键字 @ 格式化为对象

@"Hello, World!"  为字符串对象

@[@"123",@"234"]; 数组

@selector() 选择器

@property 属性

id  表示任意类型

二、类

//声明       person类   继承自  NSObject

@interface   Person      :      NSObject

{   //成员变量(有结构体的影子)、全局变量(它就是全局变量)

  NSInteger age;

NSString *name;

}

//实现

@implementation Person

@end

很多情况我们会重写init方法,比如:

- (instancetype)init

{

self = [super init];

if (self) {

//做一些事,设定默认值 预设条件

age = 20;//如果不存在,自动设为0

name = @"zhangsan";  //常量的赋值方法

/*

age = 0;

name = nil;

char *s = NULL

*/

name = [[NSString alloc ]initWithFormat:@"zhangsan"];//一般用这种方法赋值

NSLog(@"%ld",age);

NSLog(@"%@",name);

}

return self;

}

三、对象初始化

Person *per = [[Person alloc]init];

Person *per = [[Person new];//跟上面效果是一样的

分配好内存的对象 OC都是自动分配内存,然后将分配好的内存初始化为想要的对象 alloc分配内存  init 初始化

注意:Person *per1 = per; 这个只是改名或者赋值

四、对象输出

对象都用%@输出

NSLog(@"%@",per);

五、方法

格式:

调用者 返回值  方法名称(带参就有冒号)      参数类型       形参名

-       (void)      run            :                     (int)        distance;

调用:

[对象 方法名]

[per run];

【OC简介-类和对象】的更多相关文章

  1. ios开发之OC基础-类和对象

    本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再 ...

  2. 【学习笔记】【oc】类和对象及类的三大基本特征

    1.类和对象 类是抽象化,对象是具体化. (1)定义类: 分为两个步骤,类的声明:定义类的成员变量和方法:@interface 用于声明定义类的接口部分,@end表面定义结束:. 成员变量的定义:{} ...

  3. 「OC」类和对象

    一.面向对象 OC语言是面向对象的,c语言是面向过程的,面向对象和面向过程只是解决问题的两种思考方式,面向过程关注的是解决问题涉及的步骤,面向对象关注的是设计能够实现解决问题所需功能的类. 术语:OO ...

  4. OC基础:类和对象 分类: ios学习 OC 2015-06-12 18:55 17人阅读 评论(0) 收藏

    OC:Objective-c     面向对象的c语言,简称obj-c或者OC OC和C的区别 1.OC是C语言的超集,OC是在C语言的基础上结合smalltalk的优点,开发出来的语言.oc兼容所有 ...

  5. OC 01 类和对象

    一.  定义OC的类和创建OC的对象 接下来就在OC中模拟现实生活中的情况,创建一辆车出来.首先要有一个车子类,然后再利用车子类创建车子对象 要描述OC中的类稍微麻烦一点,分2大步骤:类的声明.类的实 ...

  6. OC学习--类和对象的关系

    1. 如何创建对象 面向对象解决问题的时候必须有对象, 那应该如何创建对象? 以建造汽车为例子来解释: >建造汽车需要造车图纸, 图纸上 清楚的描述出 汽车具备的属性和功能(行为) >属性 ...

  7. 黑马程序员——OC语言 类和对象

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)类 1)类的声明 代码编写 ①定义一个Car类,拥有2个属性:轮子数 ...

  8. 李洪强iOS开发之OC[006] - 类和对象

  9. 02OC的类和对象

    这章重点介绍OC的类以及对象,由于C语言是面向过程语言,而OC只是对于C语言多了一些面向对象的特性,所以OC相对于其他面向对象语言,例如C#.Java等没有那么多的语法特性,所以差别还是比较大的. 一 ...

随机推荐

  1. spring boot 学习笔记(二) 构建web支持jsp

    一.必须将项目打包成war包 <packaging>war</packaging> 二.pom.xml加入依赖包 <dependency> <groupId& ...

  2. Java的二维数组的应用及杨辉三角的编写

    (1) 编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出. (2) 编程输出杨辉三角的前10行. 找出一个 ...

  3. Twitter的分布式自增ID算法snowflake (Java版)

    概述 分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的. 有些时候我们希望能使用一种 ...

  4. 刨一刨内核container_of()的设计精髓

    新年第一帖,总得拿出点干货才行,虽然这篇水分还是有点大,大家可以晒干了温水冲服.这段时间一直在整理内核学习的基础知识点,期间又碰到了container_of()这个宏,当然还包括一个叫做offseto ...

  5. vim段替换

    文件中有很多字段: dd ssdf df aaa="100" dd ssdf df aaa="200" asdf sdf sdf aaa="700&q ...

  6. 解决织梦channel标签 指定typeid或设置son时 currentstyle无效的修复办法

    {dede:channel type='son' row='8' currentstyle="<li><ahref='~typelink~' class='thisclas ...

  7. PHP入门教程-开发环境搭建

    1.PHP简介: PHP是能让你生成动态网页的工具之一.PHP网页文件被当作一般HTML网页文件来处理并且在编辑时你可以用编辑HTML的常规方法编写PHP. 2.学习需要基础: a.HTML b.Ja ...

  8. Jfinal连接SQLSERVER相关配置说明

    driver=net.sourceforge.jtds.jdbc.Driver jdbcUrl = jdbc:sqlserver://localhost:1433;DatabaseName=test ...

  9. Tomcat如何配置环境变量

    1, JDK:版本为jdk-7-windows-i586.exe 下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index ...

  10. 基于Django的web开发

    github地址:https://github.com/shirleyandgithub/PythonWeb