OOP を使用する課題に取り組んでいます。プログラムは基本的に、ユーザーが入力した内容に基づいて、さまざまな Lemur の束を作成します。これらはすべて、親クラスからの同様の特性と、独自のクラス内の独自の特性を共有します。
このプログラムの一部は、作成するオブジェクト (またはキツネザル) の数をユーザーが決定できるようにすることです。プログレッシブな方法でオブジェクトを作成したいので、L1、L2、L3...など。
これが私がこれまでに持っているものです。したがって、新しいオブジェクトが作成されるたびに、lemCounter を使用して Lemur 番号を追跡し、それをオブジェクト名に付加したいと考えました。
//Main section of code
static int numLems, typeLems, loop, lemCounter;
static String allLems[];
public static void main(String[] args) {
//Ask for the number of lemurs
askNL();
//Initalize the length of the array to the total number of lemurs
allLems = new String[numLems];
//Ask which lemurs the user wants to generate
//Set the lemur counter and the lemur string to nothing
lemCounter = 0;
for(int i = 0; i < numLems; i++){
//Run the method that asks which lemur they want
askTL();
//Run the method to check which lemur the user wanted
checkTL();
//Use lemCounter to keep track of the lemur number
lemCounter++;
}
}
//Method asking how many lemurs, for the sake of cleaniness in the main method
static int askNL(){
do{
try{
String numLemsStr = JOptionPane.showInputDialog("How many Lemurs would you like to generate?");
numLems = Integer.parseInt(numLemsStr);
loop = 2;
}
catch(NumberFormatException e){
JOptionPane.showMessageDialog(null, "Not an acceptable input, please try again.");
loop = 1;
}
}while(loop==1);
return numLems;
}
//Method asking which type of Lemur
static int askTL(){
do{
try{
String typeLemsStr = JOptionPane.showInputDialog("What type of Lemur would you like for Lemur "+ lemCounter+1
+ "\n1 - Tree Lemur"
+ "\n2 - Desert Lemur"
+ "\n3 - Jungle Lemur");
typeLems = Integer.parseInt(typeLemsStr);
if(typeLems > 3){
JOptionPane.showMessageDialog(null, "Not an acceptable input, please try again.");
loop = 1;
}
else{
loop = 2;
}
}
catch(NumberFormatException e){
JOptionPane.showMessageDialog(null, "Not an acceptable input, please try again.");
loop = 1;
}
}while(loop==1);
return typeLems;
}
//Method to decide which lemur the user wanted
static String[] checkTL(){
if(typeLems==1){
//I'm not sure what I need to put in the name to get it to proceed linearly
TreeLemur L = new TreeLemur();
}
return allLems;
}