Python面向对象编程

        前言:在我们真正开始编程后,面向对象这个概念在每个语言中都起着至关重要的角色,搞明白面向对象,后续的编程之路,咱们才能稳扎稳打

一、什么是类和对象?

a)笼统概念

类:抽象的,对象共有的特征

对象:有很多个。具体的存在

Python里面定义类(属性+功能):class 类名(首字母大写,大驼峰)
Python里面造对象:实例化

b)类的定义

1、类的定义
class TestName:

2、对象(类实例)

3、cl = 类名称()——cl是变量名可随意更换

c)实例方法

1、定义在类里面,第一个参数默认用self,会自动传递类实例由self接收

例子:
class Test:

       def test01(self):
       pass
—————————————————————————————————————————————————————————————————————————————————————————

2、
   实例方法的调用 
   类实例.实例方法名称()
   在类的内部:self.实例方法名称()   self == 类实例
   在类的外面:类实例.实例方法名称()

例子:
class Test_001:


    def name(self):
        print("我是name方法呀")

    def df_name(self):
        self.name() # self就是类实例本身,可以互相调用 self.方法名

cl = Test_001() #实例化Test_001类
cl.df_name() #调用Test_001类中的df_name()方法

————————————————————————————————————————————————————————————————————————————————————————
3、
   类属性的创建:写在类里面函数外面

例子:
    class test_001:
    
        sex = "男生"  #类属性
    
        def name(self):
            pass

————————————————————————————————————————————————————————————————————————————————————————

二、类和对象原理

 a)原理解释:

"""
类和对下的概念

定义类
class 类名:
    
        #初始化函数:__init__,在实例化对象同时,会同时会调用
        #java里面叫  构造函数
        def __init__(self,参数)
        self.属性 = 值(可以是函数传进来的函数/其它的函数调用。。)
        self.属性 = 值 #给对象添加一个属性,并赋值
        
        #定义对象发的方法
        #就是函数。对象是谁,self就是谁
        def 实例方法名(self,参数):
        #在方法内部,是可以通过self.属性/方法  来调用对象的其他属性或者方法。
        pass #PASS可以作为占位符
        
        #定义实例对象的方法
        #就是函数。对象是谁,self就是谁
        def 实例方法名(self,参数):
        #在方法内部,是可以通过self.属性/方法  来调用对象的其他属性或者方法。
        pass#PASS可以作为占位符
        

实例化类:创建对象
1、可以创建多个对象。创建语法:
    对象名 = 类名(参数) ##__int__有参就传参,没参就不用传
2、可以创建多个对象
3、每个对象都是独立的。每个对象都有拥有类里的所有方法
4、每个对象的属性、方法调用:
    对象名.方法()  
    对象名.属性()

"""

  b)例子展示:

#例子
#抽象描述
class Person:

    def __init__(self,name,sex,city,age): #_ _init _ _方法:  魔法 - 在创建对象的同时,自动调用,做初始化的动作
        self.name = name
        self.sex = sex
        self.city = city
        self.age = age

    #实例化对象时,对象是谁,self就是谁
    #在定义类的时候,并不知道对象是谁。就用self来表示对象
    def eat(self,food):
        self.cooking()  #self.方法名() 互相调用
        print("我喜欢吃{}".format(food))

    def study(self):
        pass

    def cooking(self):
        pass


    def find_another_friend(self):
        pass


    def play(self):
        pass


bql = Person("小阿卷","男","16","成都") #实例化类
bql.eat("火锅") #调用实例化类中的eat()方法
print(bql.name)

响应:
我喜欢吃火锅
小阿卷


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值