首页 > 编程语言 >面向对象编程二(类属性与实例属性,类方法与实例方法)

面向对象编程二(类属性与实例属性,类方法与实例方法)

时间:2023-09-13 23:03:40浏览次数:36  
标签:salary self list add 实例 user 面向对象编程 Employee 属性

类属性与实例属性

面向对象编程二(类属性与实例属性,类方法与实例方法)_类方法

案例:

# 1.定义员工类Employee,属性:姓名,薪资
# 2.增加类属性:员工薪资信息列表
# 3.尝试添加对应的类方法,实例方法
#   类方法:对员工薪资进行排名
#  实例方法:每新增一个员工,添加到列表中
# 4.测试并执行打印结果
class Employee:
    salary_list=[]  #2.增加类属性:员工薪资信息列表
    def __init__(self,name,salary):
        self.name=name
        self.salary=salary
    #  实例方法:每新增一个员工,添加到列表中
    def add_user(self):
        Employee.salary_list.append((self.name,self.salary))
    #   类方法:对员工薪资进行排名
    @classmethod
    def salary_rank(cls):
        Employee.salary_list.sort(key=lambda tumpl:tumpl[1],reverse=True)
emplyee2=Employee('猪八戒',50)
emplyee2.add_user()
emplyee1=Employee('孙悟空',200)
emplyee1.add_user()
emplyee3=Employee('沙僧',80)
emplyee3.add_user()
emplyee4=Employee('唐僧',250)
emplyee4.add_user()
print("排名前",Employee.salary_list)
print("*"*80)
Employee.salary_rank()
print("排名后",Employee.salary_list)

运行结果:

面向对象编程二(类属性与实例属性,类方法与实例方法)_类方法_02

标签:salary,self,list,add,实例,user,面向对象编程,Employee,属性
From: https://blog.51cto.com/u_15937426/7465213

相关文章

  • 监听数组Array变化或Obj属性变化
    工作中经常会遇到监听数组发生变化时执行相应的回调触发逻辑,客户应用场景中需要实现对象变量的动态监听,当变量发生变化时触发回调函数,实现事件发送等应用场景。   通常由以下两种方式实现需求一.通过改变对象原型prototype方法实现回调监听//创建一个数组原型对象varar......
  • 阿里云服务器ECS通用算力型u1实例性能测评
    阿里云服务器u1是通用算力型云服务器,CPU采用2.5GHz主频的Intel(R)Xeon(R)Platinum处理器,通用算力型u1云服务器不适用于游戏和高频交易等需要极致性能的应用场景及对业务性能一致性有强诉求的应用场景(比如业务HA场景主备机需要性能一致),云服务器u1算是共享型s6实例的替代者,阿里......
  • @Autowired注入属性idea警告
    1.@Autowired报错原因分析和4种解决方案!上图的报错信息相信大部分程序员都遇到过,奇怪的是虽然代码报错,但丝毫不影响程序的正常执行,也就是虽然编译器IDEA报错,但程序却能正常的执行,那这其中的原因又是为何?​报错原因分析报错的原因首先是因为IDEA强大的报警机制,@Autowi......
  • VUE2基础-Vue实例
    Vue实例创建一个Vue实例 每个Vue应用都是通过用 Vue 函数创建一个新的 Vue实例开始的:varvm=newVue({//选项})虽然没有完全遵循 MVVM模型,但是Vue的设计也受到了它的启发。因此在文档中经常会使用 vm (ViewModel的缩写)这个变量名表示Vue实例。当创建......
  • web前端入门到实战:HTML5基础-新增标签+新增属性+布局案例
    html5中常用的结构标签article文章header头部nav导航section区域aside侧边栏hgroup区块的相关信息figure定义一组内容及标题figcaption定义figure元素的标题footer底部dialog对话框使用习惯:header/section/footer>aside/articl......
  • hutool依赖,复制list<a>的相同属性给list<b>,判断传入值是否为空等
      依赖传入<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.11</version></dependency>   以下是将list<User>与list<UserVO>相同属性名的属性值,从list<User>......
  • 面向对象编程一(类和对象的应用)
    1.类是什么?类是对具有相同属性的和行为的事物/物体的总称。又来描述同一事物的属性和行为。2.什么叫对象?客观存在的事物皆称为对象,具体一点说就是某一类事物的具体体现。3.类与对象的关系:类是对对象的描述,对象是类的具体体现。案例一:#定义一个Person类:#构建属性:姓名/年龄/性......
  • 蓝牛文件属性时间批量修改工具v2.00免费版
     在日常中如果你需要更改多个文件的创建时间或是修改时间 蓝牛文件属性时间批量修改工具就可以快速帮助你一键批量更改,软件只需导入文件然后设置时间即可。更新日志2023年9月9日 V2.00更新 原时间或指定时间随机加小时时间 并且 优化核心代码 修改已知BUG2022.06.2......
  • Windows服务-在服务器上安装相同Windows服务的多个实例
        最近遇到一个问题,就是新建了一个windows服务,然后需要在同一个服务器上部署两个实例(服务名称不一样,使用的执行码一样),刚开始以为直接在部署时设置参数服务名称不一致就可以,然后部署第二次的时候就报错,最后查了半天,找到了解决办法,文章中有好几种解决办法,我觉得最实用的解......
  • CSS3 中 transition 和 animation 的属性分别有哪些
    Transition属性:transition 属性用于定义元素在状态改变时从一个样式转换到另一个样式的过渡效果。它包含以下几个属性:transition-property:指定过渡效果应用的CSS属性名称,多个属性可以用逗号分隔。transition-duration:指定过渡效果的持续时间,单位可以是秒(s)或毫秒(ms)。transit......