OC第一天——面向对象
,面向对象的语言
C的区别:
,oc是在c语言的基础上做了扩展,c语言中的所有语法,在oc中都可以使用,甚至你可以在工程里加入C++ 语言
是一门运行时语言
?
//1.百度 (ios)
//2.看苹果的官方文档(API接口网站)
//3.看博客
//4.自己的错误总结
面向对象编程的三大特征:封装,继承,多态
类:具有相同特征和行为(功能)事物的抽象
//1、通过Cocoa touch
class 模板,创建类,自动生成.h 和 .m文件
//2、在.h
文件中写类的特征(实例变量) 和方法的声明
//3、在.m中写实现部分
//1、开辟内存空间
//2、初始化
]中括号调用方法
//[Person alloc]
给person 这个类发送一个消息alloc(开辟内存空间)
//创建对象person1
//每一个对象 isa指针 用来指向它的父类,之所有能够调用父类的方法,完全是因为这个
isa 指针;
如果初始化没有赋值这时默认所有的实例变量都为空;
person1 =
[person1 init];
这条语句同时完成了两件事:开辟内存并初始化;
//@interface
是接口 Person
是类名 :继承自谁
NSObject 是所有Oc类中的基类
//---------------------------Person类的创建对象的特征---------------------
@interface
Person
: NSObject
//特征一定要写在下面那对大括号里面
{
@public
//实例变量对@public
修饰后的就能在类的外部访问到这些实例变量了;
//类的外部指:.h 和.m
之外的其他文件就叫类的外部
//类的内部指:.h 和.m
文件之内
//NSString
是OC中字符串类
NSString
*_name;//姓名NSString
不是基本数据类型,所以定义它需要加*
NSInteger
_age;//年龄NSInteger
是基本数据类型,所以定义变量时不需要加*号
NSString
*_sex;//性别
----------------------------Persson类型创建出对象所拥有的行为----------
//用 (减号)(- )号
修饰的方法属于对象方法,这个方法只能有我们定义这个类的创建出来对象来调用
//用加好(+)修饰的方法属于类方法,这这方法只能有类来调用
- (id)init;//重写inint写法
- (void)sayHello;//小驼峰命名法
- (void)eat;
//添加一个带参数的方法
//一个冒号:代表一个参数
:(数据类型)参数名 >
(void)talk:(NSString
*)content;
//隐匿有参数数据类型
(void)talk:(NSString
*)content
withSonmeone : (NSString
*)name;
是类的实现部分
Person
范类型,返回值可以指向任何类型的对象 类似于void *
;
(id)init{—————————赋给初始值————————
=
@"翔哥";
_sex
=
@"妖";
_age
=
18;
//打印self地址
NSLog(@"self地址:%p",self);
//谁调用这个方法self
指的就是谁
return
self;
文件:
*p =
[[Person
alloc]init];
//调用sayhello的方法
[p
sayHello];
p->_name
=
@"zhangSan";
p->_age
=
18;
p->_sex
=
@"妖";
[p
sayHello];
//调用吃得方法
[p eat];
OC第一天——面向对象的更多相关文章
- OC第一节 —— 类和对象
一.类和对象的概念 1.1类 自己的定义: 具有相同或相似性质对象的抽象. 1.2 对象 自己的定义: 对象是人们要进行研究的任何物体,从最简单的整数到复杂的飞机 等均可以看做是对象. 举例说明: 类 ...
- OC中的面向对象语法
一. 面向对象和面向过程思想 OC是面向对象的,C是面向过程的.面向对象和面向过程只是解决问题的两种不同思想 1. 面向对象和面向过程的区别 1) 以用电脑听歌为例子 a) 面向过程 打开电脑 播放电 ...
- OC语言-02面向对象的三大特性
01封装 #import <Foundation/Foundation.h> @interface Student : NSObject { //@public 成员变量尽量不使用 int ...
- OC语言的面向对象—类和对象、方法
1. 面向对象和面向过程思想 OC是面向对象的,C是面向过程的.面向对象和面向过程只是解决问题的两种不同思想 1. 面向对象和面向过程的区别 1) 以用电脑听歌为例子 a) 面向过程 ➢ 打开电脑 ➢ ...
- Java面向对象编程 第一章 面向对象开发方法概述
一.软件开发经历的生命周期: ①软件分析 ②软件设计 ③软件编码 ④ 软件测试 ⑤ 软件部署 ⑥软件维护 二.为了提高软件开发效率,降低软件开发成本,一个优良的软件系统应该具备以下特点: ① 可重用性 ...
- Java面向对象 第一章 面向对象开发方法概述
一.软件开发经历的生命周期: ①软件分析 ②软件设计 ③软件编码 ④ 软件测试 ⑤ 软件部署 ⑥软件维护 二.为了提高软件开发效率,降低软件开发成本,一个优良的软件系统应该具备以下特点: ① 可重用性 ...
- OC中的面向对象语法4
一. 继承 1. 继承的基本用法 l 设计两个类Bird.Dog // Bird的声明 @interface Bird : NSObject { @public int weight; } - (vo ...
- OC中的面向对象语法3
一. set方法和get方法 1. set方法和get方法的使用场合 @public的成员可以被随意赋值,应该使用set方法和get方法来管理成员的访问(类似机场的安检.水龙头过滤,过滤掉不合理的东西 ...
- OC第一讲:类和对象
今天终于开始进行OC的学习了 一.首先讲了NSLog NSLog是oc里面的输出语句,其用法和printf差不多,但是还是有差别的 1,NSLog是自动换行的,不用像printf那样还需要加'\n': ...
随机推荐
- Go 语言运算符
运算符用于在程序运行时执行数学或逻辑运算. Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 接下来让我们来详细看看各个运算符的介绍. 算术运算符 下表 ...
- docker环境 mysql读写分离 mycat maxscale
#mysql读写分离测试 环境centos 7.4 ,docker 17.12 ,docker-compose mysql 5.7 主从 mycat 1.6 读写分离 maxscale 2.2.4 读 ...
- C语言完美体系
**第 1 篇 C 语言第一阶段 13 1.1C 语言第一阶段--语言课程概述 13 1.1.1 什么是语言,什么是 C 语言 13 1.1.2 基本常识 14 1.1.3 人与计算机之间的更好的交互 ...
- Programming In Scala笔记-第九章、控制抽象
本章主要讲解在Scala中如何使用函数值来自定义新的控制结构,并且介绍Curring和By-name参数的概念. 一.减少重复代码 1.重复代码的场景描述 前面定义的函数,将实现某功能的代码封装到一起 ...
- iOS 中隐藏UITableView最后一条分隔线
如何优雅的隐藏UITableView中最后一条分割线? 这个问题是很常见,却又不太容易解决的. 可能通常的做法都是隐藏UITableView的分割线,自定义一条. 最近在使用弹出菜单的时候,同样遇到了 ...
- arm-none-eabi-g++ -Xlinker -T "../LF3Kmonitor.ld" -Xlinker -Map="Bogota_ICT_V.map"-ram-hosted.ld -mc
1.arm-none-eabi-g++:是编译ARM裸板用的编译器,不依赖于操作系统. 2.-Xlinker -T "../LF3Kmonitor.ld" -Xlinker -Ma ...
- Linux内核中的有关Page的算法
static inline int get_order(unsigned long size) { int order; size = (size-1) >> (PAGE_SHIFT-1) ...
- Android TV开发总结(四)通过RecycleView构建一个TV app列表页(仿腾讯视频TV版)
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/52854131 前言:昨晚看锤子手 ...
- springMVC源码分析--异常处理机制HandlerExceptionResolver执行原理(二)
上一篇博客springMVC源码分析--异常处理机制HandlerExceptionResolver简单示例(一)中我们简单地实现了一个异常处理实例,接下来我们要介绍一下HandlerExceptio ...
- PHP 验证码 浅析
拓展 背景图 imagecreatetruecolor imagecolorallocate imagepng imagedestoryimage 简易数字验证码 imagecolorallocate ...