roselearn

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

Python类和实例

 概念太抽象了,举例说明

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
class People(object):
    position = "这是类属性1"
    school = "这是类属性2"
 
    @classmethod
    def read(cls):
        msg = "这是类方法,可以类调用,也可以实例调用"
        return msg
 
    def __init__(self, name, age):
        """这是构造方法,也叫魔法方法,下面是实例属性"""
        self.name = name
        self.age = age
        self.s = self.school #可以调用类属性
        self.__money = "这是私有属性"
 
    def __privatefun(self):
        msg = "这是私有方法"
        return msg
 
    def run(self):
        msg = "这是实例方法"
        return msg
 
    def go(self):
        msg = f"这里是实例方法,可以获取类属性:{self.position},也可以调用类方法:{self.read()}"
        return msg
 
    def prifun(self):
        msg = f"这是实例方法,可以调用私有属性:{self.__money};也可以调用私有方法:{self.__privatefun()};只能内部调用"
        return msg
 
    @staticmethod
    def fun():
        """类里的函数就叫静态方法,类和实例都可以调用"""
        msg = "这是静态方法"
        return msg
 
 
zhangsan = People("zhangsan", 20) #实例化
print("实例获取实例属性---",zhangsan.name)
print("实例属性里获取类属性---",zhangsan.s)
print("实例调实例方法---",zhangsan.run())
print("实例方法里获取类属性和类方法---",zhangsan.go())
print("类调类属性---",People.position)
print("类调类方法---",People.read())
print("实例调类属性---",zhangsan.position)
print("实例调类方法---",zhangsan.read())
print("实例方法调私有属性和私有方法---",zhangsan.prifun())
print("实例调静态方法---",zhangsan.fun())
print("类调静态方法---",People.fun())
# print("私有属性和方法不能在外部调用,所以这样是错误的---",zhangsan.__money)

 运行结果如下

 

posted on   dongzs  阅读(23)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示