• OC基本程序和面向对象


    一. 第一个OC程序

    1.     import的功能和include一样,是将右边的文件拷贝到当前的import的位置

    为了降低程序员的负担,防止重复导入。优点是能自动防止重复拷贝。

     2.    NSLog(@"%@",name);是会自动换行。

      NSLog在输出内容时会附加一些系统信息。

      NSLog和printf接收的参数不一样。

     3.    Foundation.h我们称之为主头文件,主头文件中又拷贝了该工具箱所有工具的头文件,我们只要导入主头文件就可以使该工具箱中所有的工具,避免了每次使用都要导入一个对应的头文件。

     4.    @autoreleasepool是自动释放池,代码写在自动释放池{}

    二.面向对象思想

    1>面向对象的基本概念

    面向对象是软件开发方法

    面向对象是一种对现实世界理解和抽象的方法,是计算机编程发展到一定阶段的产物。

    软件编程就是将我们的思维转变成计算机能够识别语言的一个过程。

     

    2>面向对象和面向过程的区别

    面向对象是相对于面对过程而言的,都是一种思想。

     

    面向过程强调的是功能行为,关注的是解决问题需要哪些步骤,什么事情都要亲力亲为。

     

    面向对象将功能封装进对象,强调具备了功能的对象。

    关注的是解决问题需要哪些对象,找到对象来帮你做。

     

    3>面向对象的特点

    面向对象是一种符合人们思考习惯的思想,可以将复杂的事情简单化,将程序员从执行者转换成指挥者。

    完成需求时:

    要先去找具备所需功能的对象来用。

    如果该对象不符合,那么创建一个具备所需功能的对象,这样简化开发。

     

     


    三.类与对象

    面向对象的根本是类,面向对象的核心是对象。图纸和房子,图纸和车子。

    OC中创建对象比较复杂,想要创建对象要先有类,要想先了解对象先要了解类的概念。

    OC类在生活中就相当于图纸,用来描述一类事物,而对象就是根据图纸创建出的,通过类来告诉计算机创建出的对象的属性和行为。

    因此面向对象解决问题应该是先考虑需要设计哪些类,再利用类创建多少个对象。

    类与对象的关系

     

    类和对象是抽象与具体的关系,对象依赖类而存在

     

     类是一一个抽象的概念,对象是一一个真实存在的物体。

     

     方法是对象可以执行的操作 

    1.如何设计一个类

    >生活中通过事物无非就是描述事物的名称/属性(对应类中成员变量)和行为(对应类中成员方法)。

    >定义类其实就是在定义类中的成员(成员变量和成员方法)。

     

    oc中,类的定义分为两个部分

     1 接口部分@interface:是类的接口部分,声明了类与父类的名字,方法和实例变量

     2 实现部分@implementation:包含了方法的实现(真正意义上定义了类的行为)

     

    2.如何分析一个类

    一般名词都是类(名词提炼法)。读文字需求的时候。

     

    拥有相同属性和行为的对象都可以抽象成为一个类。  读图片需求的时候。

     

    四.程序实现OC类 

    C语言中函数分为声明和实现

    OC中定义一个类也分为声明和实现,也就是以后我们在OC中定义类,就是在写类的声明和实现

    1.如何编写类的声明

    以@interface开头,以@end结尾,然后再class name对应的地方上写上事物名称,也就是类名即可。

    注意:类名的首字母必须大写

    声明一个类的目的就是为了告诉系统,我们这个类中有哪些属性和行为。

    OC类声明中属性只能写在@interface和@end之间的{}中。

    注意:编写OC类属性时,建议将所有属性的名称前面都加上_(下划线)。

    类名后面的:NSObject 是为了让我们的类具备创建对象的能力

    2.如何编写类的实现

    以@implementation开头,以@end结尾,然后再class name对应的地方上写上声明时类的名称,必须和声明时的名称一模一样。

    3.如何通过一个类来创建对象

    在OC中想要通过一个类来创建一个对象,必须给类发送一个消息(好比C语言中通过调用方法一样)。

    如何发送消息?在OC中只要想发送消息就先写上[类名称/对象名称 方法名称];

    发送什么消息(调用什么方法)可以创建一个对象呢?new

    只要通过一个类调用类的new方法,也就是给类发送一个叫做new的消息之后

    系统内部就会做3件事

    1.为类创建出来的对象分配存储空间

    2.初始化通过类创建出来的对象的属性

    3.返回通过类创建出来的对象对应的地址

    []

  • 相关阅读:
    七牛大数据平台的演进与大数据分析实践--转
    Re:从0开始的微服务架构:(一)重识微服务架构--转
    Re:从 0 开始的微服务架构--(三)微服务架构 API 的开发与治理--转
    Java7里try-with-resources分析--转
    线上服务CPU100%问题快速定位实战--转
    Windows下本机简易监控系统搭建(Telegraf+Influxdb+Grafana)--转
    Scalable, Distributed Systems Using Akka, Spring Boot, DDD, and Java--转
    ES Segment Memory——本质上就是segment中加到内存的FST数据,因此segment越多,该内存越大
    Self Organizing Maps (SOM): 一种基于神经网络的聚类算法
    RBF网络——核心思想:把向量从低维m映射到高维P,低维线性不可分的情况到高维就线性可分了
  • 原文地址:https://www.cnblogs.com/gzoof/p/5462252.html
Copyright © 2020-2023  润新知