二.oc类和对象

2.1 面向对象思维的建立

l 2.1.1 类的概念和设计

l  2.1.2 成员变量

l  2.1.3 访问修饰符public/private/protected

2.2 OC 方法,封装

l  2.2.1 方法的概念

l  2.2.2 实例方法和类方法

l  2.2.3 构造函数和自定义构造函数

l  2.2.4 description方法

l  2.2.5 封装的概念

l  2.2.6 setter/getter方法的建立

l  2.2.7 self关键字的讲解

l  2.2.8 property关键字

 

2.1.1 类的概念和设计

万物皆对象(Any thing is object)比如人类,是个类别。那么小明就是人类的一个对象。

  1. 对他的身体特征的描述(属性)

他具有眼睛,身高,年龄等。

  1. 对他行为(方法)方面的观察

可以站立,奔跑,攀爬,工作,编程等

从上面两点可以看出,一个类别,具有对这种种类的描述(属性)和行为(方法)。

这些我们在设计类的时候,作为在 @interface里面的属性定义

而年龄的具体数据,具体的行为,我们需要在 @ implementation 里面来实现。

  2.1.2 成员变量

 @interface People : NSObject

{

     *加上下划线,为了区分局部变量

     *类或类对象必须是一个指针

     *注意:定义不赋值,只做声明不赋值

2.1.3 访问修饰符public/private/protected

     *oc当中如果没有特意强调修饰符,默认为protected

    @public // 公共的,在外部可以访问

     int _age;

    @private// 私有的,只能在本类当中可以访问

     NSString* _name;

    @protected//受保护的,只能在父子类当中可以访问

     int _weight;

}

@end

ObjC中所有的对象类型的变量都必须加上“*”,在ObjC中对象其实就是一个指针(例如之前看到的NSString也是如此,但是基本类型不用加”*”);

ObjC中使用[]进行方法调用,在ObjC中方法调用的本质就是给这个对象或类发送一个消息;

在ObjC中类的实例化需要两个步骤:分配内存、初始化;

类的初始化调用了父类的init方法,如果使用默认初始化方法进行初始化(没有参数),内存分配和初始化可以简写成[Person new];

公共成员的调用使用“->”操作符; 

2.2.1 方法的概念

方法作为类的行为动作,用于实现具体的执行过程。

2.2.2 实例方法和类方法

 

2.2.3 构造函数和自定义构造函数

2.2.4 description方法

2.2.5 封装的概念

2.2.6 setter/getter方法的建立

2.2.7 self关键字的讲解

2.2.8 property关键字

 

 

 

 

原文地址:https://www.cnblogs.com/gaozhang12345/p/5421562.html