案例介绍:随着科技的发展,手机的使用已经普及到每个家庭甚至个人,手机的属性越来越强大,功能也越来越多,因此人们在生活中越来越依赖于手机。
任务要求,使用所学知识编写一个手机属性及功能分析程序设计,测试各个手机的属性及功能。使用手机时,输出当前手机的各个属性参数以及正在使用的功能。
案例思路:
(1)通过任务描述可知,需要定义一个手机类Phone实现手机的概念。
(2)手机具有属性:品牌(brand)、型号(type)、价格(price)、操作系统(os)和内存(memory)。因此,需要在手机类中定义品牌(brand)、型号(type)、价格(price)、操作系统(os)和内存(memory)的变量。
(3)手机具有功能:查看手机信息(about())、打电话(call(String no))、玩游戏(playGame())、下载音乐(downloadMusic())、播放音乐(playMusic())。所以,可以定义对应的方法about()、call()、playGame()、downloadMusic()、playMusic()。
案例实现:
定义手机功能类
public class Phone {
String brand; // 品牌
String type; // 型号
String os; // 操作系统
int price; // 价格
int memorySize; // 内存
public Phone() {
}
public Phone(String brand, String type, String os, int price, int memorySize) {
this.brand = brand;
this.type = type;
this.os = os;
this.price = price;
this.memorySize = memorySize;
}
// 关于本机
public void about() {
System.out.println("品牌:"+brand+"\n"+"型号:"+type+"\n"+"操作系统:"+os+"\n"+"价格:"+price+"\n"+"内存:"+memorySize+"\n");
}
// 打电话
public void call(int num) {
System.out.println("使用自动拨号功能:");
String phoneNo = "";
switch (num) {
case 1: phoneNo = "爸爸的号。";break;
case 2: phoneNo = "妈妈的号。";break;
case 3: phoneNo = "爷爷的号。";break;
case 4: phoneNo = "奶奶的号。";break;
}
System.out.println(phoneNo);
}
// 打游戏
public void playGame() {
System.out.println("玩扫雷游戏。");
}
// 下载音乐
public void downloadMusic(String song) {
System.out.println("开始下载。。。。");
System.out.println("下载完成。。。。");
}
// 播放音乐
public void playMusic(String song) {
System.out.println("播放歌曲:"+song);
}
}
上述代码中,定义了手机的品牌brand、型号type、价格price、操作系统os、内存memorySize等属性,并提供了手机类的无参和参构造,以及打电话call()、打游戏playGame()、下载音乐downloadMusic()、播放音乐playMusic()等方法。
定义测试类
public class Main {
public static void main(String[] args) {
// 通过无参构造创建手机对象一
Phone p1 = new Phone();
p1.brand = "苹果";
p1.type = "iphoneX";
p1.os = "ios";
p1.price = 8888;
p1.memorySize = 16;
// 测试p1的各项功能
p1.about();
p1.call(3);
p1.playGame();
p1.playMusic("我的中国心");
System.out.println("********************");
Phone p2 = new Phone("华为","华为荣耀20","Android",6666,16);
// 测试p2 的各项功能
p2.about();
p2.call(4);
p2.playGame();
p2.playMusic("北京欢迎你");
}
}
上述代码中,创建了两个手机对象,并输出了这两个手机对象的属性及功能。