面向对象和类

Posted fxc-520520

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象和类相关的知识,希望对你有一定的参考价值。

一,面向对象。

面向对象的程序设计:核心是对象二字,对象是特征与技能的结合体,基于面向对象设计程序就好比再创造一个世界,你就是这个世界的上帝,是一种‘上帝式’的思维方式。

优点:

解决了程序的扩展性。

缺点:

变成的复杂度远高于面向过程。

 

二,定义:

#在程序中,务必保证:先定义(类),后使用(产生对象)
PS:
  1. 在程序中特征用变量标识,技能用函数标识
  2. 因而类中最常见的无非是:变量和函数的定义

#程序中的类
class OldboyStudent:
    school=‘oldboy‘
    def learn(self):
        print(‘is learning‘)
        
    def eat(self):
        print(‘is eating‘)
    
    def sleep(self):
        print(‘is sleeping‘)
  


#注意:
  1.类中可以有任意python代码,这些代码在类定义阶段便会执行
  2.因而会产生新的名称空间,用来存放类的变量名与函数名,可以通过OldboyStudent.__dict__查看
  3.对于经典类来说我们可以通过该字典操作类名称空间的名字(新式类有限制),但python为我们提供专门的.语法
  4.点是访问属性的语法,类中定义的名字,都是类的属性

#程序中类的用法
.:专门用来访问属性,本质操作的就是__dict__
OldboyStudent.school #等于经典类的操作OldboyStudent.__dict__[‘school‘]
OldboyStudent.school=‘Oldboy‘ #等于经典类的操作OldboyStudent.__dict__[‘school‘]=‘Oldboy‘
OldboyStudent.x=1 #等于经典类的操作OldboyStudent.__dict__[‘x‘]=1
del OldboyStudent.x #等于经典类的操作OldboyStudent.__dict__.pop(‘x‘)


#程序中的对象
#调用类,或称为实例化,得到对象
s1=OldboyStudent()
s2=OldboyStudent()
s3=OldboyStudent()

 



以上是关于面向对象和类的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段9——JS中的面向对象编程

Java 对象和类

Python面向对象:继承多态类属性和类方法单例

Python面向对象:继承多态类属性和类方法单例

Python_016(面向对象之属性和类方法)

面向对象(对象和类)