四时宝库

程序员的知识宝库

python面向对象(Python面向对象的特征)

昨天整理了下函数的相关知识内容,今天整理的是面向对象,我们在学习编程的时候,不太好理解什么是面向对象,今天的面向对象知识点希望能够对你有所帮助。

面向对象程序设计是在面向过程程序设计的基础上发展而来的,它比面向过程编程具有更强的灵活性和扩展性

面向对象(OO)就是我们学习阶段的一个“分水岭”啦,希望大家都能掌握和熟悉面向对象,为后面的学习打下夯实的基础哦。

世界万物皆可对象。它可以是宏观的,也可以是微观的,可以是具体的,也可以是抽象的,如果我们判断它是否可以作为对象,可以判断它是否有属性和方法。比如一个人,他的身高,胖瘦,性别是属性,他可以行走、奔跑就是方法

类是封装对象的属性和方法的载体,也就是说具有相同属性和行为的一类实体被称为类,例如上面的一个人是对象,那么人类就是属于一个类。再比如雁类就是一个类,具备翅膀,爪子等属性,觅食和飞行等方法,而一只大雁就可以看作是一个对象

具体代码可以参考下面,和以前一样,可以直接复制粘贴在环境中运行哦希望都能动起手来,多多练习哦,我们一起成长

************具体代码如下*****************
'''
面向过程:线性思维去解决问题

面向对象:无法用简单但线性思维解决

class 类名:
    pass
'''
class Student:
    name = 'ge' #类属性
    @property     #把类的函数封装成属性
    def sleep(self):
        print('sleep')
   # def __init__(self):  #初始化方法
    #    pass
    def eat(self):   #实例方法,行参为self
        print('你吃了么')

    @staticmethod   #静态方法
    def method():
        print('我是静态方法')

    @classmethod   #类方法
    def classMonthod(cls):
        print('我是类方法')

st = Student()
st.eat()   # = Student.eat(st)
Student.eat(st)
print(st.name)
print(Student.name)
st1 = Student()
st.name = 'tia'
print(st1.name)

st.sleep

Student.classMonthod() #类方法是需要类名调用
Student.method()   #静态方法也是需要类名调用

#动态绑定

st.gender = 'nan'  #为实例化的对象添加属性,为动态绑定
print(st.gender)

#动态绑定方法

def run():
    print('奔跑')

st.run=run  #动态绑定方法
st.run()
st.classMonthod()

你理解面向对象了么?欢迎评论收藏哈!

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接