ArielWang 发表于 2023-6-27 14:43:06

0.如果我们对于父类的某个方法不满意的话,完全是可以在子类中重新定义一个同名的方法进行覆盖,这种做法我们称为重写,其实就是实现类继承的多态。
1.尽管我们的接口是不变的,但它却可以根据不同的对象执行不同的操作.
2.可以
3.When I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck.
4.降低了耦合度
5.不属于

1808694513 发表于 2023-6-27 14:24:23

0.通过子类对象对父类对象的方法重写
1.增加代码通用性
2.可以
3.如果像鸭子一样走路,像鸭子一样呱呱叫,那它就是一只鸭子
4.增强了内聚
5.不属于
0.
class staff:
    def __init__(self,name,job,grade,year,uid):
      self.name = name
      self.job = job
      self.grade = grade
      self.year = year
      self.uid = uid

    def get_uid(self):
      return self.uid
    def get_name(self):
      return self.name
    def get_job(self):
      return self.job
    def get_grade(self):
      return self.grade
    def get_year(self):
      return self.year
    def salary(self):
      pass

class Employee(staff):
   
    self.__init__(self,name,job,grade,year,uid)
   
    super().get_uid()
    super().get_name()
    super().get_job()
    super().get_grade()
    super().get_year()
   
    def salary(self):
      return 3000 + 500 * self.grade + 50 * year

class Teamleader(staff):
    self.__init__(self,name,job,grade,year,uid)
   
    super().get_uid()
    super().get_name()
    super().get_job()
    super().get_grade()
    super().get_year()
   
    def salary(self):
      return 4000 + 800 * self.grade + 100 * year

class Manager(staff):
    self.__init__(self,name,job,grade,year,uid)
   
    super().get_uid()
    super().get_name()
    super().get_job()
    super().get_grade()
    super().get_year()
   
    def salary(self):
      return 5000 + 1000 * (self.grade +year)
   
uid = 10000

def main():
    while State != "5":
      State = input("1.录入;2.查询;3.升级;4.降级;5.退出:")
      if State == 1:
            name = input("姓名:")
            job = input("职位(E.普通员工;T.组长;M.经理):")
            year = input("工龄:")
            grade = input("级别:")
            while job == 'E' and grade > 10:
                grade = input("该职位最高级别为10,请重新录入级别:")
            while job == 'T' and grade > 6:
                grade = input("该职位最高级别为6,请重新录入级别:")
            while job == 'M' and grade > 3:
                grade = input("该职位最高级别为3,请重新录入级别:")
            if job == 'E':
                s = Employee(name,job,grade,year,uid)
            elif job == 'T':
                s = Teamleader(name,job,grade,year,uid)
            elif job == 'M':
                s = Manager(name,job,grade,year,uid)
            uid += 1
            print("录入成功!姓名:{},工号:{},薪资:{},".format(s.get_name(),s.get_uid(),s.salary()))

fishc-闫 发表于 2023-6-27 12:10:53

666

alensummer 发表于 2023-6-26 14:02:58

test

xiaobit 发表于 2023-6-26 12:27:28

1

阿根candice 发表于 2023-6-25 17:34:14

1

bookqaqszw 发表于 2023-6-25 15:01:15

0.同一个运算符,函数,对象,在不同的场景中有不同的效果
1.同一种类实现多种形式
2.可以
3.不造
4.降低耦合度
5.不是

以后不干编程 发表于 2023-6-20 18:20:18

daan

misajdisajdio 发表于 2023-6-17 07:32:58

学习打卡

追梦少年OL 发表于 2023-6-16 11:13:16

1

zxy666dcy 发表于 2023-6-15 09:06:22

6

suxiang 发表于 2023-6-14 15:31:38

332

kiwioyan 发表于 2023-6-13 15:22:03

0. 具有相同名称的方法或属性

1.灵活,方便,简洁

2.可以

3.

4.增强内聚

5.不属于

动动手:
0.

choook 发表于 2023-6-12 10:59:41

1

lixiaofa 发表于 2023-6-11 23:05:33

0.

1.
同一个类在不同的场景可以有不同的功能

2.
可以,这是运算符号的多态

3.
不知道,同属于动物的类型?

4.
降低了耦合度

5.
是的

wbzxz 发表于 2023-6-11 13:11:04

问答题0
函数接口不变, 接口是不变的,但它却可以根据不同的对象执行不同的操作
--------------------
问答题1
多态优势就是不用根据不同对象修改函数
--------------------
问答题2
根据操作数类型不同,得到不同结果的现象,可以称为多态
--------------------
问答题3
When I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck.
--------------------
问答题4
多态是降低了耦合度
--------------------
问答题5
不属于多态现象

litengyue 发表于 2023-6-10 14:01:02

0 -__-
1 a;lsdjkfasl;k;ls
2 可以
3
4 属于?


0

wayski 发表于 2023-6-8 16:28:19

z8733537 发表于 2023-6-6 20:43:03

good

梅花千朵仓九公 发表于 2023-6-1 14:53:27

{:5_102:}
页: 25 26 27 28 29 30 31 32 33 34 [35] 36 37 38 39 40 41 42 43
查看完整版本: 第063讲:类和对象(VI)| 课后测试题及答案