首页 > 代码库 > 面向对象

面向对象

如果解决一件事情的时候,每一件事情都是自己亲自去一步一步实现,那么这种解决问题的思路叫做面向过程。

如果解决一件事情的时候,自己不去亲自做,找一个专门做这种事情的人来帮我做,这种解决问题的思路叫面向对象。

  面向过程和面向对象是解决一样事情的不同思路

 

面向过程--》后期的维护修改不方便

面向对象--》后期维护十分方便

 

当你遇到一个需求的时候,不要亲自去实现

  先看看有没有现成的对象做这件事情的。框架,如果有直接使用

  如果没有,就自己造一个拥有这样功能的对象,那么造出来的这个对象可以多次使用

 

对象:对象是现实生活中的一个具体的存在,看得见,摸得着,拿过来可以直接用。

类:类是对一群具有相同特征或者行为的事物的一个统称,抽象的,不能直接使用

 

 

 

  类和对象之间的关系

     类是模板,类的对象是根据这个模板创建出来的

     类模板中有什么,对象中就有什么 绝不可能多 也不能少

 

     类是制造月饼的模,模是不可以吃的,所以不能直接使用

     对象是根据模制造出来的月饼,模上面有什么,出来的月饼就是什么样的

     月饼可以吃,所以对象可以直接使用

 

  设计一个类:

    类的作用:用来描述一群具体相同特征和行为的食物

      类的名字,你要描述的这类事物叫什么名字,

      这类事物具有的相同的特征,这类事物拥有什么

      这类事物具有的共同的行为,这类事物会做什么

 

  定义类的语法

    位置,直接写在源文件之中,不要写在main函数之中

    类的定义分两部分

      -》类的声明

       @interface 类名 :NSObject

         {

            这类事物具有的共同的特征,将他们定义为变量

         }

        功能就是一个方法,将方法的声明写在这里

        @end

      -》类的实现

      @implemention 类名

        将方法的实现写在这里

      @end

 

  注意:

      类必须要有声明和实现

      类名用你描述事物的名称来命名就可以了

        -》类名的每一个单词的开头一定要大写

      NSObject是什么意思不用管 照写

      用来表示这类事物共同的特征的变量必须定义在@interface的大括号中

      定义在大括号中用来表示这类事物的共同的特征的变量我们叫属性、成员变量、实力变量、字段、、、、

      属性名一定要以下划线 _ 开头

 

技术分享

 

  类无法被直接使用,如果非要使用这个类的话,就必须先找到这个类的一个具体存在

   类和对象的关系:类中有的东西 这个类的对象也有 不会多不会少

 

     创建一个类的对象:

              语法: 类名 *对象名 = 【类名 new】;

                Person *p1= [Persen new];

                根据Person这个类的模板,创建了一个对象名字叫p1

                   p1对象的特点

                      -》可以直接使用

                      -》类中定义的东西 这个对象中也有 不会多也不会少

    如何使用对象:

      默认情况下,对象的属性是不允许被外界直接访问的

      如果允许对象的属性被外界访问,那么就在声明属性哪里加一个@public关键字。

技术分享

 

面向对象