zoukankan      html  css  js  c++  java
  • python基础4—面向对象

    感觉和java相比一个是大公司,一个是小公司, 大公司规范有文档,小公司简约效率高

    面向对象  
    # 成员属性名称前 加上 __ 意为private
    # get / set :  get_name()   set_name(name) 
    class Student:
        def __init__(self, name, age):
            self.name = name
            self.age = age
            
        def detail(self):
            print(self.name)
            print(self.age)
          
    class PrimaryStudent(Student):  # inherent
        def lol(self):
            print('can not win then run faster than others')
    
    class CollegeStudent(Student):
        def __init__(self, name, age, gf):  # overrite构造函数
            self.name = name
            self.age = age
            self.gf = gf
    
        def gf_detail(self):
            print(self.gf)
    
    obj1 = PrimaryStudent('小学生', 7)
    obj1.lol()
    obj1.detail()
    
    obj2 = CollegeStudent('王思聪', 29, '张雨欣')
    obj2.detail()
    obj2.gf_detail()
    
    print(dir(obj1))                            # class info as list
    print(hasattr(obj1, 'name'))        # True
    setattr(obj1, 'name', 'jack')  
    print(getattr(obj1, 'name'))          # jack
    print(getattr(obj1, 'name', 404))  # jack
    fn = getattr(obj1, 'detail')             #7
    fn()
    
    #  实例属性和类属性
    class Student(object):
        name = 'Student'
        def __init__(self, name):
            self.name = name   # 类属性
    s = Student('Bob')
    s.score = 90               # 实例属性
    
    print(s.name) 
    s.name = 'Jack'          # 给实例属性绑定name属性, 实例属性优先级比类属性高 
    print(s.name)              # Jack
    print(Student.name)   # Student
    del s.name                 # 删除实例name属性
    print(s.name)             # Student
  • 相关阅读:
    解决npm 下载速度慢的问题
    mongodb可视化工具mongobooster
    页面响应时间测试
    pyH支持python3
    python正则表达式
    Windows下TeX Live + Sublime Text 3 + Sumatra PDF配置
    Octocat,看着喜欢就都下载下来了
    [c#]记一次实验室局域网的ARP欺骗
    [FQ]Tor + Chrome + PAC 尝试 FQ
    [c#][福利]BTTool种子文件修改工具
  • 原文地址:https://www.cnblogs.com/zeroones/p/8329497.html
Copyright © 2011-2022 走看看