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 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(); } }