一·实验内容
1.学生类和借书卡类的设计
要求:
(1)设计学生类、借书卡类、及应用测试类3个类;
(2)在学生类中设计属性:学生名字和电子邮件,成员方法:包括名字和电子邮件的设置和返回;
(3)在借书卡类中设计属性:持卡人(学生)和已经借出书的数量,成员方法:包括针对两个属性的设置和返回以及显示卡中记录的所有相关信息。
(4)设计成员变量和成员方法的定义和修饰符,只能通过类自身方法访问私有属性。类外的对象可以访问公有方法。
2.USB接口程序的设计。
鼠标、键盘、麦克风这些USB设备需要插入接口中才能使用。 USB设备随着计算机的启动而启动,随着计算机的关闭而关闭,所以接口中需要定义设备的启动和停止方法。
(1)编写USB接口:设备启动方法(turnOn( ))、设备关闭方法(turnOff( ))
(2)实现USB接口的鼠标类(Mouse)、键盘类(KeyBoard)和麦克风类 (Mic),实现抽象方法
(3)由于这些设备需要在计算机中使用,设计计算机类(Computer)。计算机中有了USB插槽后,才能插入USB接口,每次插入一个新设备,计算机都会安装此设备的驱动程序。驱动安装后,设备才能正常使用,所以计算机类中设计一个USB插槽(数组)和安装USB设备(add(USB usb))的方法。 同时,计算机要有开机方法(powerOn())和关机方法(powerOff()) 。
(4)测试类Test。实例化计算机对象,并向计算机对象中添加USB设备,运行查看结果
二.实验代码
1.学生类和借书卡类的设计
//学生类
public class Student {
private String name;
private String email;
public Student() {
}
public Student(String name, String email) {
this.name = name;
this.email = email;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
//借书卡类
public class Card {
private String cardholder;
private int number;
public Card() {
}
public Card(String cardholder, int number) {
this.cardholder = cardholder;
this.number = number;
}
public String getCardholder() {
return cardholder;
}
public void setCardholder(String cardholder) {
this.cardholder = cardholder;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public void display(){
System.out.println("持卡人姓名为:"+getCardholder()+"tt已经借出的数量为:"+getNumber());
}
}
//测试类
package excecise2;
public class Test {
public static void main(String[] args) {
Student s=new Student();
Card c=new Card();
s.setName("白敬亭");
s.setEmail("3678269@11.com");
c.setCardholder("小白");
c.setNumber(3);
System.out.println("借书人姓名:"+c.getCardholder()+"ttt借书人邮箱:"+s.getEmail()+"ttt已经借书的数量:"+ c.getNumber());
}
}
2.USB接口程序的设计。
public interface USB {
void turnOn();
void turnOff();
}
public class KeyBoard implements USB {
@Override
public void turnOn() {
System.out.println("KeyBoard启动了");
}
@Override
public void turnOff() {
System.out.println("keyBoard关闭了");
}
}
public class Mouse implements USB{
@Override
public void turnOn() {
System.out.println("Mouse启动了");
}
@Override
public void turnOff() {
System.out.println("Mouse关闭了");
}
}
public class Mic implements USB{
@Override
public void turnOn() {
System.out.println("Mic启动了");
}
@Override
public void turnOff() {
System.out.println("Mic关闭了");
}
}
public class Computer {
private USB[] usbArr = new USB[4];
//像计算机上连接一个USB设备
public void add(USB usb) {
//遍历数组
for (int i = 0; i < usbArr.length; i++) {
if (usbArr[i] == null) {
usbArr[i] = usb;
break;
}
}
}
//计算的开机功能
public void powerOn() {
//遍历所有的插槽
for (int i = 0; i < usbArr.length; i++) {
//如果发现有设备
if (usbArr[i] != null) {
//将USB设备启动
usbArr[i].turnOn();
}
}
System.out.println("计算机开机成功!!!");
}
//计算的关机功能
public void powerOff() {
//遍历所有的插槽
for (int i = 0; i < usbArr.length; i++) {
//如果发现有设备
if (usbArr[i] != null) {
//将USB设备关闭
usbArr[i].turnOn();
}
}
System.out.println("计算机关机成功!!!");
}
}
public class Test {
public static void main(String[] args) {
//实例化对象
Computer computer=new Computer();
//像计算机中添加鼠标、键盘、麦克风
computer.add(new KeyBoard());
computer.add(new Mouse());
computer.add(new Mic());
//开机
computer.powerOn();
//关机
computer.powerOff();
}
}
三.运行结果
//借书卡类
public class Card {
private String cardholder;
private int number;
public Card() {
}
public Card(String cardholder, int number) {
this.cardholder = cardholder;
this.number = number;
}
public String getCardholder() {
return cardholder;
}
public void setCardholder(String cardholder) {
this.cardholder = cardholder;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public void display(){
System.out.println("持卡人姓名为:"+getCardholder()+"tt已经借出的数量为:"+getNumber());
}
}
//测试类
package excecise2;
public class Test {
public static void main(String[] args) {
Student s=new Student();
Card c=new Card();
s.setName("白敬亭");
s.setEmail("3678269@11.com");
c.setCardholder("小白");
c.setNumber(3);
System.out.println("借书人姓名:"+c.getCardholder()+"ttt借书人邮箱:"+s.getEmail()+"ttt已经借书的数量:"+ c.getNumber());
}
}
2.USB接口程序的设计。
public interface USB {
void turnOn();
void turnOff();
}
public class KeyBoard implements USB {
@Override
public void turnOn() {
System.out.println("KeyBoard启动了");
}
@Override
public void turnOff() {
System.out.println("keyBoard关闭了");
}
}
public class Mouse implements USB{
@Override
public void turnOn() {
System.out.println("Mouse启动了");
}
@Override
public void turnOff() {
System.out.println("Mouse关闭了");
}
}
public class Mic implements USB{
@Override
public void turnOn() {
System.out.println("Mic启动了");
}
@Override
public void turnOff() {
System.out.println("Mic关闭了");
}
}
public class Computer {
private USB[] usbArr = new USB[4];
//像计算机上连接一个USB设备
public void add(USB usb) {
//遍历数组
for (int i = 0; i < usbArr.length; i++) {
if (usbArr[i] == null) {
usbArr[i] = usb;
break;
}
}
}
//计算的开机功能
public void powerOn() {
//遍历所有的插槽
for (int i = 0; i < usbArr.length; i++) {
//如果发现有设备
if (usbArr[i] != null) {
//将USB设备启动
usbArr[i].turnOn();
}
}
System.out.println("计算机开机成功!!!");
}
//计算的关机功能
public void powerOff() {
//遍历所有的插槽
for (int i = 0; i < usbArr.length; i++) {
//如果发现有设备
if (usbArr[i] != null) {
//将USB设备关闭
usbArr[i].turnOn();
}
}
System.out.println("计算机关机成功!!!");
}
}
public class Test {
public static void main(String[] args) {
//实例化对象
Computer computer=new Computer();
//像计算机中添加鼠标、键盘、麦克风
computer.add(new KeyBoard());
computer.add(new Mouse());
computer.add(new Mic());
//开机
computer.powerOn();
//关机
computer.powerOff();
}
}
三.运行结果
1.
2.



