Oc 基础知识。



类 和 对象 、

一、两种常见的编程思想:
面向过程编程、面向对象编程。

面向过程编程以事件(任务)为中心、程序围绕事件、列出了事件的每个步骤、一步一步完成。
面向对象编程以事物为中心、程序围绕事物展开、完成事件只是一个小任务。

二、什么是类?
类是一组具有相同特征和行为的事物 (抽象)
类是抽象的、并不是具体指某一个人、二十泛指某一堆人。

怎样描述类?
类: 特征、行为
导演类: 特征为 姓名、性别、国籍、等等。
行为 拍电影、指导、等等。
电脑类: 特征为 型号、品牌、价格、等等。
行为 开机、运行程序、放音乐、等等。
(一组具有相同特征和行为的事物的抽象)

三、什么是对象?
对象就是 类 的实例。


Oc全称: Objective-C.
Oc中、类的定义分两个部分: 接口部分和实现部分。

接口部分: 声明了类名、父类名、实例变量(特征)和方法(行为)
实现部分:方法的具体实现(具体行为)


----------------------------------------------------------------------------------------------
类的接口部分:
接口部分以@interface开始、以@end结束。
//接口部分 (所属的文件 .h)
// 实例变量的列表 类的特征列表
@interface Student : NSObject //以@interface开头 Students(类名)NSObject (父类名)

{

NSString * _name; // NSString 定义一个字符串
int _age; //年龄 整型
}
//类的行为列表
//方法列表 (类的方法在接口部分、只是声明、不实现)
- (void) study; // "-" 代表一个方法的开始 study(方法名)
- (void) play;

@end


实现部分: .m文件
接口部分中的 所有方法 都不许在实现部分中实现
以@implentation + 类名 开头:
@implementation Stundent
- (void) study
{
_name = @"SuperMan";
_age = 22;
NSlog(@"我是%@,我今年%d",_name,_age); //打印用 NSlog(@"");
}
....

@end


可以在一个文件中、声明多个类。但不推荐这种做法。

main.m
先要引入类的头文件 例如:

#import "Student.h"
在main函数里调用.

//使用 类 给对象分配内存空间
Student * stu1 = [Student alloc]; //[谁调用 方法名]; oc中的调用方法
//stu 为 产生的对象。
//对 对象、初始化
stu = [stu1 init]; //初始化 对stu(对象)初始化 init 是 其里面赋值。

以上两段代码可以合成一段。 在初始化一个对象时 都使用下面的写法
Student * stu1 = [[Student alloc] init];
//利用 stu1 对象 调用自身的方法
[stu1 study];
[stu1 play];
----------------------------------------------------------------------------------------------

实例变量的使用;
1、类的内部
在 类 的内部、实例变量在任何方法中都可以随意使用
2、外部访问实际变量时、由 可见度 设置
三种访问权限(可见度)
@public 公开的 表示实例变量可以 在外部 随意调用和改动。
@protected 受保护的 表示实例变量 不可以在外部被调用和修改。 (Oc默认)
@private 私有的 不可以 在外部被调用和修改。

@public的使用。
在.h文件里 @interface 类名 : NSOject 下使用。
当在.h 文里输入后、在main.m中来调用对象的实例变量 (外部调用)
stu1 ->_name = @"倾心";
NSlog(@"%@",stu1 -> _name);




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值