Python之面向对象和面向过程

1.类与对象

(1).面向对象两个核心概念

1.类:是一群具有相同特征或形为的事物的一个统称,类是抽象的,不能直接使用。
2.对象:由类创造出来的具体存在。

在开发中,应该先有类,再有对象

(2).类和对象的关系

  • 类是模板,对象是根据这个模板创建出来的
    类只需要有一个,对象可以有多个(一张图纸可以造多个飞机)

类:属性(信息)和方法(你能完成的事(动作))

(3)类的三要素

1.类名 :这类事物的名字,满足大驼峰命名法
2.属性:这个类创建出的对象有什么特征
3.方法:这个类创建出的对象有什么行为

类是对象吗?

class student:
    pass
print(id(student))
print(type(student))

执行结果:说明开辟了内存空间存储,所以称为类对象。
在这里插入图片描述
类属性:

直接写在类里的变量,称为类属性。

方法和函数的区别:

定义在类之内的称为方法,定义在类之外的称为函数。

方法的分类:

  • 静态方法:
  • 类方法:
  • 实例方法:
    在这里插入图片描述

2、对象的创建

例如:

1.需求:
  小明今年18岁,身高1.75,每天早上要跑步,然后去吃东西
  小美今年17岁,身高1.65,小美不跑步,但是喜欢吃东西

分析:
  类名:Person
  属性:name,age,height
  方法:run(),eat()

实操:

2.需求:
  一只黄颜色的狗叫大黄,看见生人汪汪叫,看见家人摇尾巴

分析:

  类名:Dog
  属性:name,color
  方法:shout(),shake()

self: 哪一个对象调用的方法,self就是哪一个对象的引用,可以使用 .属性名
      利用赋值语句就可以在类的外部给对象增加属性(不推荐),将对象的属性封装在类中

需求:

小猫爱吃鱼 小猫要喝水

代码:

# 定义类
class Cat():
    # 定义类的两个方法: eat(),drink()
    def eat(self):
        # name: 类的属性
        print('%s爱吃鱼' %self.name)
    def drink(self):
        print('%s要喝水' %self.name)

#创建对象(实例化)
tom = Cat()
#给tom对象的name属性赋值
tom.name = 'Tom'
#返回的是一个对象,因为tom是对象
print(tom)
#调用方法
tom.eat()
tom.drink()

hello_kitty = Cat()
hello_kitty.name='hello_kitty'
hello_kitty.eat()
hello_kitty.drink()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值