对python面向对象的理解

对python面向对象的理解,第1张

对python面向对象的理解

1.类class

创建类

class Student:#Student为类的名称,由一个或多个单词组成,首字母大写,其余字母小写

2.类属性

 native_pace='山西'#直接写在类里的变量称为类属性

3.方法

分为初始化方法,实例方法,静态方法,类方法。

  #初始化方法
   def __init__(self,name,age):
       self.name=name  
#self.name称为实例属性,这里进行赋值 *** 作,将局部变量的name的值赋给实例变量
       self.age=age
#    实例方法
   def eat(self):
       print("我在吃饭")
   #静态方法
   @staticmethod
   def sm():
       print("我使用了staticmethod,所以我是静态方法")
   #类方法
   @classmethod
   def chs(cls):
       print("我使用了classmethod,所以我是类方法")

注意:这些方法都是定义在类里的,如果定义在类之外则称为函数。

4.数据成员

变量或者实例变量用于处理类及其实例对象的相关的数据。

5.方法重写

如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。

6.实例变量

在初始化方法中,由self修饰的变量称为实例变量

def __init__(self,name,age):

7.局部变量

定义在方法中的变量,只作用于当前实例的类。

8.对象的创建(类的实例化)

即:实例名=类名()

#创建Student类的对象
stu1=Student('张三',20)

此时类对象和实例对象的地址不同

#创建Student类的对象
stu1=Student('张三',20)
#输出实例对象stu1
print(id(stu1))     #140600453848896
print(type(stu1))   #
print(stu1)    #<__main__.Student object at 0x7fe0181b5f40>
print("-----------------------")
#输出类名称Student
print(id(Student))     #140406016910592
print(type(Student))   #
print(Student)    #

9.方法的调用

#方法一:对象名.方法名()
stu1.eat()
#输出实例属性
print(stu1.name)
print(stu1.age)
print('-------------------------------')
#方法二:类名.方法名(对象名),该对象实际上是方法定义处的self
Student.eat(stu1)

后续将持续更新。。。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5571779.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存