编写一个类 A,该类创建的对象可以调用 fun()输出小写英文字母表,然后再编写一个该类的子类 B,要求子类B 必须继承类 A 的 fun()(不允许重写),子类创建的对象不仅可以调用 fun()输出小写英文字母表,而且调用子类新增的方法 printA()输出大写英文字母表
时间: 2024-12-04 16:24:26 浏览: 18
在Python中,我们可以这样设计这个类和它的子类:
```python
class ClassA:
def __init__(self):
self.lowercase_letters = 'abcdefghijklmnopqrstuvwxyz'
def fun(self):
print(self.lowercase_letters)
class ClassB(ClassA): # 子类B继承自ClassA
def __init__(self):
super().__init__() # 调用父类的初始化方法
self.uppercase_letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
def printA(self):
print(self.uppercase_letters)
# 创建并使用子类B的对象
obj_b = ClassB()
obj_b.fun() # 输出小写字母表
obj_b.printA() # 输出大写字母表
```
在这个例子中,`ClassA`是一个基础类,它有一个`fun()`方法用于打印小写字母表。而`ClassB`作为`ClassA`的子类,继承了`fun()`方法,并添加了一个新的方法`printA()`,用于打印大写字母表。由于题目要求不允许重写`fun()`方法,所以在`ClassB`中我们通过`super().__init__()`来调用父类的初始化和`fun()`方法。
阅读全文