面向对象编程

Posted 7188-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象编程相关的知识,希望对你有一定的参考价值。

一、编程范式

编程范式即编程的方法论,标识一种编程风格.

三大编程范式:

1.面向过程编程:

面向过程是一种以事件为中心的编程思想,编程的时候把解决问题的步骤分析出来,然后用函数把这些步骤实现,在一步一步的具体步骤中再按顺序调用函数.

2.函数式编程:

"函数式编程"是一种"编程范式",也就是如何编写程序的方法论。它属于"结构化编程"的一种,主要思想是把运算过程尽量写成一系列嵌套的函数调用.

3.面向对象编程:

世界上有很多人和事物,每一个都可以看做一个对象,而每个对象都有自己的属性和行为,对象与对象之间通过方法来交互。面向对象是一种以“对象”为中心的编程思想,把要解决的问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个对象在整个解决问题的步骤中的属性和行为.

二、类与对象相关术语解释

类:类是封装对象的属性和行为的载体,反过来说具有相同属性和行为的一类实体被称为类.

对象:是一个抽象概念,表示任意存在的事物。世间万物皆对象!现实世界中,随处可见的一种事物就是对象,对象是事物存在的实体.

面对对象设计:将一类具体事物的数据和动作整合在一起,即面向对象设计.

面向对象程序设计的特点:

封装:封装是面向对象编程的核心思想,将对象的属性和行为封装起来,其载体就是类,类通常会对客户隐藏其实现细节,这就是封装的思想.

继承:继承是实现重复利用的重要手段,子类通过继承复用了父类的属性和行为的同时又添加了子类特有的属性和行为.

多态:将父类对象应用于子类的特征就是多态。子类继承父类特征的同时,也具备了自己的特征,并且能够实现不同的效果,这就是多态化的结构.

三、面向对象简单设计

分析:

1.先规定类
2.分析特征,
3.再分析功能,
4.将特征与功能整合在一起.

def phone(name, ban_ben, chu_li):           # 类
    def init(name, ban_ben, chu_li):        #初始化字典的作用
        pho = {
            ‘name‘: name,
            ‘ban_ben‘: ban_ben,
            ‘chu_li‘: chu_li,               # 属性
            ‘game‘: game,                   # 将特征与属性连接起来
            ‘chat‘: chat
        }
        return pho
    def game(phone):                        # 特征
        print(‘%s play gaming!‘ % phone[‘name‘])
    def chat(phone):                        # 特征
        printf(‘welcome to you use %s chat‘ % phone[‘chu_li‘])
    return init(name, ban_ben, chu_li)
p1 = phone(‘vivo‘, ‘9.0‘, ‘晓龙865‘)         # 输入特征  p1为对象
print(p1)
p1[‘game‘](p1)                               # 输出特征

将程序改进:

class Phone:
    def __init__(self, name, ban_ben, chu_li):
        self.name = name
        self.ban_ben = ban_ben
        self. chu_li = chu_li
    def game(self):
        print(‘%s play gaming!‘ % self.name)

    def chat(self):
        print(‘welcome to you use %s chat‘ % self.chu_li)

p1 = Phone(‘vivo‘, ‘9.0‘, ‘晓龙865‘)
print(p1)
p1.game()

四、类与对象

1.什么叫类:类是一种数据结构,就好比一个模型, 该模型用来表述一类事物(事物即数据和动作的结合体),用它来生产真实的物体(实例).

2.什么叫对象:睁开眼,你看到的一切的事物都是一个个的对象,你可以把对象理解为一个具体的事物(事物即数据和动作的结合体)(万物皆可对象).

3.类与对象的关系:对象都是由类产生的,上帝造人,上帝首先有一个造人的模板,这个模板即人的类,然后上帝根据类的定义来生产一个个的人.

4.什么叫实例化:由类生产对象的过程叫实例化,类实例化的结果就是一个对象,或者叫做一个实例(实例=对象).

以上是关于面向对象编程的主要内容,如果未能解决你的问题,请参考以下文章

面向面试编程代码片段之GC

Scala的面向对象与函数编程

面向对象编程

面向过程编程与面向对象编程

Java面向对象

面向对象编程(OOP)