init
This commit is contained in:
65
day01/src/com/inmind/test10/DeviceTest.java
Normal file
65
day01/src/com/inmind/test10/DeviceTest.java
Normal file
@@ -0,0 +1,65 @@
|
||||
package com.inmind.test10;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
// 测试类
|
||||
public class DeviceTest {
|
||||
public static void main(String[] args) {
|
||||
// 创建设备管理器
|
||||
DeviceManager manager = new DeviceManager();
|
||||
|
||||
// 添加设备
|
||||
manager.addDevice(new Smartphone("Apple", "iPhone 14", 6999.0, 256));
|
||||
manager.addDevice(new Laptop("Dell", "XPS 15", 9999.0, 32));
|
||||
manager.addDevice(new SmartTV("Sony", "KD-65X9000H", 7999.0, 65.0));
|
||||
manager.addDevice(new Smartphone("Samsung", "Galaxy S23", 5999.0, 512));
|
||||
manager.addDevice(new Laptop("Lenovo", "ThinkPad X1", 8999.0, 16));
|
||||
|
||||
// 显示所有设备
|
||||
manager.showAllDevices();
|
||||
|
||||
// 显示设备总数(静态方法使用)
|
||||
System.out.println("\n当前设备总数: " + Device.getTotalDevices());
|
||||
|
||||
// 开机所有设备
|
||||
manager.powerOnAllDevices();
|
||||
|
||||
// 为所有可充电设备充电60分钟
|
||||
manager.chargeAllChargeableDevices(60);
|
||||
|
||||
// 显示可充电设备及其电量
|
||||
manager.showChargeableDevices();
|
||||
|
||||
// 按价格排序并显示
|
||||
/*manager.sortDevicesByPrice();
|
||||
manager.showAllDevices();*/
|
||||
|
||||
// 测试多态:调用特定设备的方法
|
||||
System.out.println("\n===== 设备功能测试 =====");
|
||||
List<Device> appleDevices = manager.findDevicesByBrand("Apple");
|
||||
for (Device device : appleDevices) {
|
||||
if (device instanceof Smartphone) {
|
||||
Smartphone phone = (Smartphone) device;
|
||||
phone.connectToNetwork("家庭WiFi");
|
||||
phone.takePhoto();
|
||||
phone.showBatteryStatus();
|
||||
phone.disconnectFromNetwork();
|
||||
}
|
||||
}
|
||||
|
||||
// 测试静态方法:计算折扣价格
|
||||
/*Device laptop = manager.findDevicesByBrand("Dell").get(0);
|
||||
double discountPrice = Device.calculateDiscountPrice(laptop, 0.8);
|
||||
System.out.println("\n" + laptop.getBrand() + " " + laptop.getModel() +
|
||||
" 原价: " + laptop.getPrice() + " 折扣价: " + discountPrice);*/
|
||||
|
||||
// 关机所有设备
|
||||
manager.powerOffAllDevices();
|
||||
|
||||
// 移除一个设备
|
||||
manager.removeDevice("Sony", "KD-65X9000H");
|
||||
manager.showAllDevices();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user