“”"
PYTHON 面向对象编程 java c c++
面向对象
类,方法,类变量的定义
实例引用 实例变量使用
======两种编程思想
面向过程:把大象装进冰箱
一种以过程为中心的编程思想
简单的事情
面向对象:造汽车
把每个事情都作为一个类别
一种更符合我们人类思维习惯的编程思维
面向对象开发就是不断的创建对象,使用对象,操作对象做事情
复杂的事情
语言层面:封装代码和数据
规格层面:对象是一系列可以被使用的公共接口
概念层面:对象是某种拥有责任的抽象
—面向对象程序设计规则
1,分析有哪些类
2,每个类有哪些属性和行为
3,类与类之间存在的关系
类(class):抽象的概念,一类事物
方法:类中定义的函数,对外提供的服务
类变量:类变量在整个实例化的对象中是公用
实例引用:实例化一个对象
实例变量:以’self.变量名‘的方式定义的变量
“”"
# 通过class关键字 进行定义了一个类
class Person:
# 类的变量
name = "defalut"
age = 0
gender = "male"
weight = 0
def __init__(self, name, age, gender, weight): # 构造方法,初始化方法
# 实例变量:self.变量名的方式,访问的
self.name = name
self.age = age
self.gender = gender
self.weight = weight
# def set_param(self, name):
# self.name = name
@classmethod
def eat(self):
print(f"{self.name} eatting")
def play(self):
print(f"{self.name}playing")
def jump(self):
print(f"{self.name} jumping")
# 类的实例化,创建了一个实例
zhangsan = Person("zhang", 20, "男", 130)
# zhangsan.set_param("zhangsan")
print(f"姓名:{zhangsan.name}, 年龄:{zhangsan.age}, 性别:{zhangsan.gender}, 体重:{zhangsan.weight}")
lisi = Person("LISI", 40, "女", "140")
print(f"姓名:{lisi.name}, 年龄:{lisi.age}, 性别:{lisi.gender}, 体重:{lisi.weight}")
# 姓名:zhang, 年龄:20, 性别:男, 体重:130
# 姓名:LISI, 年龄:40, 性别:女, 体重:140
print(zhangsan.eat())
# 类变量和实例变量的区别,都是可以被修改
# 只有创建了一个实例,才可以去修改实例变量
print(Person.name)
# defalut
# 类方法和实例方法的区别
# 类方法是不能访问的,需要装饰器 @classmethod
Person.eat()
# defalut eatting