zoukankan      html  css  js  c++  java
  • python基础 day23 面向对象2

    python中一切皆对象,对象的类型就是类

    一、类的成员和命名空间

    • 类中的变量是静态变量
    • 对象中的变量只属于对象本身,每个对象有属于自己的空间来存储对象的变量
    • 当使用对象名去调用某一个属性的时候会优先在自己的空间中寻找,找不到再去对应的类中寻找
    • 如果自己没有就引用类的,如果类也没有就报错
    • 对于类来说,类中的变量所有的对象都是可以读取的,并且读取的是同一份变量
    # 实现一个类,能够自动统计这个类实例化了多少个对象
    class Jason:
        count = 0
        def __init__(self, hight, weight):
            Jason.count += 1
            self.hight = hight
            self.weight = weight
        def aloha(self):
            pass
    
    info = Jason(171, 180)
    print(info.count)
    # 类中静态变量的用处
    # 如果一个变量是所有的对象共享的值,那么这个变量应该被定义成静态变量
    # 所有和静态变量相关的增删改查都应该使用类名来处理,而不应该使用对象名来修改
    

    二、组合

    ​ 一个类的对象是另外一个类对象的属性

    class Student:
        def __init__(self, name, age, sex, number, clas, phone):
            self.name = name
            self.age = age
            self.sex = sex
            self.number = number
            self.clas = clas
            self.phone = phone
    
    
    class Clas:
        def __init__(self, cname, begin, teacher):
            self.cname = cname
            self.begin = begin
            self.teacher = teacher
    
    
    py66 = Clas('python66期', '2020-04-01', '苍老师')
    py99 = Clas('python99期', '2020-05-09', '波多老师')
    jason = Student('jason', 24, 'man', '94131', py66, 15252767039)
    carly = Student('carly', 21, 'woman', '990930', py99, 17717058385)
    print(jason.clas.begin)
    
  • 相关阅读:
    CentOS 7 安装java 环境
    CentOS 7 替换网易yum 源
    九度:题目1553:时钟
    Maximum Subarray
    职场细节
    poj2524 Ubiquitous Religions
    九度 1526:朋友圈
    程序载入
    设备管理
    操作系统系列
  • 原文地址:https://www.cnblogs.com/west-yang/p/12854294.html
Copyright © 2011-2022 走看看