面向对象编程(一)

一、什么是面向对象编程

对象是一个抽象的概念,万事万物都是对象

例如人有年龄,姓名,身高体重,电话号码........这些属性组成了人这个对象

车,生产厂家,汽车品牌型号,价格,里程数,耗油量...这也组成了一个对象

面向对象编程就是将这些属性打包成一个类来表示。

二、面向对象代码应该如何编写

a、规则                  

class 类名:     # 定义了一个类
    def __init__(self,*args,**kwargs) #这也是"方法"
        self.*args=arg   #实例变量
        self.**kwargs=kwarg

           
    def 函数名(self):        # 在类中编写了一个"方法"
           pass
                     
调用:
      x1 = 类名()                    # 创建了一个对象/实例化一个对象
      x1.函数名()                    # 通过对象调用其中一个方法.

b、什么时候写?

  1. 当函数中有大量的公共值时可以进行归类
  2. 提取公共值

2、构造方法

构造方法的目的是进行数据初始化,通过构造方法,可以将数据进行打包,以后使用时,取其中获取即可

3、 应用

  1. 将数据封装到对象中,以供自己在方法中调用
  2. 将数据封装到对象中,以供其他函数调用

三、面向对象的三大特性

1、封装

  1. 将相关功能封装到一个类中
  2. 将数据封装到一个对象中
#1
class Message:
    def email(self):
        pass
    def msg(self):
        pass
    def wechat(self):
        pass
#2
class Person:
    def __init__(self,name,age,gender):
        self.name=name
        self.age=age
        self,gender=gender
foo=Person("一二三",25,“男)

2、继承

       1、继承编写

class Son(父类):
    pass

       2、支持多继承(现在自己的类中找,没有就去父类中找)

       3、为什么要有多继承?是为了提供代码的重用性

3、多态:多种形态或多种状态

   鸭子模型:

def func(args):
    pass 

func(args)#arg有多种形态

 

 

四、函数式编程与面向对象编程的对比
1、对比:
           函数:定义简单/调用简单
           面向对象:定义复杂/调用复杂   好处:归类,将某些类似的函数写在一起
            
            总结:
                 1. 函数式编程可能会比面向对象好.
                 2. Python中支持两种编程方式.
                 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值