实验11 面向对象基础及类的定义
时间: 2023-10-08 12:08:01 浏览: 46
实验目的:
1. 理解面向对象编程的基本概念和特点
2. 学会定义类和对象、属性和方法
3. 掌握类的继承、多态等概念和使用方法
实验内容:
1. 定义一个汽车类,包含属性:品牌、型号、颜色、速度等;方法:启动、加速、刹车、熄火等。
2. 定义一个电视类,包含属性:品牌、型号、颜色、尺寸等;方法:开机、关机、调节音量、切换频道等。
3. 定义一个手机类,包含属性:品牌、型号、颜色、尺寸等;方法:拨打电话、发送短信、拍照、播放音乐等。
4. 实现以上类的继承关系,并创建相应的对象进行测试。
实验步骤:
1. 定义汽车类
```
class Car:
def __init__(self, brand, model, color, speed):
self.brand = brand
self.model = model
self.color = color
self.speed = speed
def start(self):
print("汽车已启动!")
def accelerate(self):
print("汽车已加速!")
def brake(self):
print("汽车已刹车!")
def stop(self):
print("汽车已熄火!")
```
2. 定义电视类
```
class TV:
def __init__(self, brand, model, color, size):
self.brand = brand
self.model = model
self.color = color
self.size = size
def power_on(self):
print("电视已开机!")
def power_off(self):
print("电视已关机!")
def adjust_volume(self):
print("音量已调节!")
def change_channel(self):
print("频道已切换!")
```
3. 定义手机类
```
class Phone:
def __init__(self, brand, model, color, size):
self.brand = brand
self.model = model
self.color = color
self.size = size
def make_call(self):
print("正在拨打电话...")
def send_message(self):
print("正在发送短信...")
def take_photo(self):
print("正在拍照...")
def play_music(self):
print("正在播放音乐...")
```
4. 实现以上类的继承关系
```
class ElectricCar(Car):
def __init__(self, brand, model, color, speed, battery):
super().__init__(brand, model, color, speed)
self.battery = battery
def recharge(self):
print("电动汽车正在充电...")
class SmartPhone(Phone):
def __init__(self, brand, model, color, size, os):
super().__init__(brand, model, color, size)
self.os = os
def surf_internet(self):
print("正在上网浏览...")
def install_app(self):
print("正在安装应用...")
class SmartTV(TV):
def __init__(self, brand, model, color, size, os):
super().__init__(brand, model, color, size)
self.os = os
def smart_cast(self):
print("正在进行智能投屏...")
def online_play(self):
print("正在进行在线播放...")
```
5. 创建对象进行测试
```
# 创建汽车对象并进行测试
car = Car("宝马", "X5", "黑色", 0)
car.start()
car.accelerate()
car.brake()
car.stop()
# 创建电视对象并进行测试
tv = TV("TCL", "55P8S", "银色", "55英寸")
tv.power_on()
tv.power_off()
tv.adjust_volume()
tv.change_channel()
# 创建手机对象并进行测试
phone = Phone("华为", "Mate 40", "白色", "6.76英寸")
phone.make_call()
phone.send_message()
phone.take_photo()
phone.play_music()
# 创建电动汽车对象并进行测试
electric_car = ElectricCar("特斯拉", "Model S", "白色", 0, "电池")
electric_car.start()
electric_car.accelerate()
electric_car.brake()
electric_car.stop()
electric_car.recharge()
# 创建智能手机对象并进行测试
smart_phone = SmartPhone("小米", "10", "黑色", "6.67英寸", "MIUI")
smart_phone.make_call()
smart_phone.send_message()
smart_phone.take_photo()
smart_phone.play_music()
smart_phone.surf_internet()
smart_phone.install_app()
# 创建智能电视对象并进行测试
smart_tv = SmartTV("海信", "55U7QF", "黑色", "55英寸", "Android TV")
smart_tv.power_on()
smart_tv.power_off()
smart_tv.adjust_volume()
smart_tv.change_channel()
smart_tv.smart_cast()
smart_tv.online_play()
```
实验结果:
```
汽车已启动!
汽车已加速!
汽车已刹车!
汽车已熄火!
电视已开机!
电视已关机!
音量已调节!
频道已切换!
正在拨打电话...
正在发送短信...
正在拍照...
正在播放音乐...
汽车已启动!
汽车已加速!
汽车已刹车!
汽车已熄火!
电动汽车正在充电...
正在拨打电话...
正在发送短信...
正在拍照...
正在播放音乐...
正在上网浏览...
正在安装应用...
电视已开机!
电视已关机!
音量已调节!
频道已切换!
正在进行智能投屏...
正在进行在线播放...
```