使用用户输入创建新对象[JAVA]
嗨,我正在尝试创建一个程序,每当用户输入某个对象的新信息时,就创建一个新对象。目前我有这个
import java.util.Scanner;
public class Main
{
public static void main (String args[])
{
String input;
Scanner scanner = new Scanner(System.in);
do
{
System.out.println("Computer Menu");
System.out.println("1. Add a new Desktop Information");
System.out.println("2. Add a new Laptop Information");
System.out.println("3. Display all Computer Information");
System.out.println("4. Quit");
System.out.print("Please enter either 1 to 4: ");
input =(scanner.nextLine());
if (input.equals("1"))
{
Desktop desktop1 = new Desktop();
System.out.println("Please enter Desktop ID: ");
desktop1.setID (scanner.nextLine());
System.out.println("Please enter Desktop Processor Speed: ");
desktop1.setProcess (Double.parseDouble(scanner.nextLine()));
System.out.println("Please enter Desktop RAM: ");
desktop1.setRam (Double.parseDouble(scanner.nextLine()));
System.out.println("Please enter Desktop Harddisk Space: ");
desktop1.setDisk (Double.parseDouble(scanner.nextLine()));
System.out.println("Please enter Desktop Monitor Type: ");
desktop1.setMonitor (scanner.nextLine());
System.out.println("Please enter Desktop Price: ");
desktop1.setPrice (Double.parseDouble(scanner.nextLine()));
desktop1.displayComputer();
}
else if (input.equals("2"))
{
Laptop laptop1 = new Laptop();
System.out.println("Please enter Laptop ID: ");
laptop1.setID (scanner.nextLine());
System.out.println("Please enter Laptop Processor Speed: ");
laptop1.setProcess (Double.parseDouble(scanner.nextLine()));
System.out.println("Please enter Laptop RAM: ");
laptop1.setRam (Double.parseDouble(scanner.nextLine()));
System.out.println("Please enter Laptop Harddisk Space: ");
laptop1.setDisk (Double.parseDouble(scanner.nextLine()));
System.out.println("Please enter Laptop Weight: ");
laptop1.setWeight (Double.parseDouble(scanner.nextLine()));
System.out.println("Please enter Laptop Price: ");
laptop1.setPrice (Double.parseDouble(scanner.nextLine()));
laptop1.displayComputer();
}
计算机超级课堂
public class Computer
{
String ID;
double process;
double ram;
double disk;
double price;
void setID (String _id)
{
ID = _id;
}
void setProcess (double _Process)
{
process = _Process;
}
void setRam (double _Ram)
{
ram = _Ram;
}
void setDisk (double _Disk)
{
disk = _Disk;
}
void setPrice (double _Price)
{
price = _Price;
}
String getID()
{
return ID;
}
double getProcess()
{
return process;
}
double getRam()
{
return ram;
}
double getDisk()
{
return disk;
}
double getPrice()
{
return price;
}
void displayComputer()
{
System.out.println("Computer ID: " + getID());
System.out.println("Processor Speed: " + getProcess());
System.out.println("RAM: " + getRam());
System.out.println("Harddisk: " + getDisk());
System.out.println("Price: " + getPrice());
}
}
桌面子类
public class Desktop extends Computer
{
String monitor;
void setMonitor (String _Monitor)
{
monitor = _Monitor;
}
String getMonitor()
{
return monitor;
}
void displayComputer()
{
System.out.println("Computer ID: " + getID());
System.out.println("Processor Speed: " + getProcess());
System.out.println("RAM: " + getRam());
System.out.println("Harddisk: " + getDisk());
System.out.println("Monitor Type: " + getMonitor());
System.out.println("Price: " + getPrice());
System.out.println("");
}
}
笔记本电脑子类
public class Desktop extends Computer
{
double Weight;
void setWeight(String _Weight)
{
Weight= _Weight;
}
String getWeight()
{
return Weight;
}
void displayComputer()
{
System.out.println("Computer ID: " + getID());
System.out.println("Processor Speed: " + getProcess());
System.out.println("RAM: " + getRam());
System.out.println("Harddisk: " + getDisk());
System.out.println("Weight: " + getWeight());
System.out.println("Price: " + getPrice());
System.out.println("");
}
}
所以有一个类和两个子类,但我认为这并不重要。所以,如果我输入1,它应该为桌面创建一个新对象,如果我输入2,它将为笔记本创建一个新对象。当我输入3时,它应该显示所有创建的对象。我不知道如何让他们中的任何一个工作,请帮忙
共 (0) 个答案