Контекст: я пытаюсь создать «Попугай», для которого вы устанавливаете возраст, имя и две фразы.
После того, как вы дадите имя попугаю, он спросит васкакую фразу вы хотите научить его, а затем она спросит вас следующую фразу после этой.
Когда рождается попугай, ему дается имя и он знает одну фразу: «AWK! Меня зовут».Поскольку возраст нового попугая равен 0, а остальные 2 строки пусты
Мой код следующий: класс Parrot и ParrotRunner
Parrot
import java.util.*;
import java.util.Scanner;
public class Parrot {
private int age;
private String nameS;
private String nameA;
private String nameF = nameS + nameA;
private String phrase2, phrase3;
public Parrot(){
age = 0;
nameA = "Steve";
phrase2 = "";
phrase3 = "";
}
public Parrot(String na, int a , String p2, String p3){
na = nameA;
a = age;
p2 = phrase2;
p3 = phrase3;
}
public void setPhrase2(String p2){
p2 = phrase2;
}
public void setPhrase3(String p3){
p3 = phrase3;
}
public void setName(String na){
na = nameA;
}
public void presetPhrases(String nf, String ns){
nameF = nf;
nameS = ns;
}
public void setAge(int a){
a = age;
}
public String getName(){
return nameA;
}
public int getAge(){
return age;
}
public String getPhrase2(){
return phrase2;
}
public String getPhrase3(){
return phrase3;
}
public String getNameS(){
return "AWWWWWK! My name is ";
}
public String getNameF(){
return getNameS() + getName();
}
public String toStringIntroduction(){
return "AWWWWK! I'm " + getAge() + getNameF() + ". What do you wish me to say?";
}
public String toString2(){
return getPhrase2() +"! What's the other phrase?";
}
public String toString3(){
return getPhrase3();
}
}
ParrotRunner
import java.util.*;
import java.util.Scanner;
public class ParrotRunner {
public static void main(String[] args)
{
Parrot basic = new Parrot();
Scanner input = new Scanner(System.in);
int a; String p2, p3, na;
System.out.println("Provide a name");
na = input.nextLine();
System.out.println("Enter the age: ");
a = input.nextInt();
p2 = input.nextLine();
p3 = input.nextLine();
Parrot parameters = new Parrot( na, a, p2, p3);
System.out.println(parameters.toStringIntroduction());
p2 = input.nextLine();
System.out.println(parameters.toString2());
p3 = input.nextLine();
System.out.println(parameters.toString3());
}
}
Код, о котором идет речь, опережает этот неправильный вывод, который приведен ниже, и я не смог отладить его после нескольких часов проверки и изменения моего кода
ParrotRunner.main({ });
Provide a name
Name
Enter the age:
1
AWWWWK! I'm 0AWWWWWK! My name is null. What do you wish me to say?
Hi
null! What's the other phrase?
Hi
null
Я был бы очень признателен, если бы вы все помогли, и, пожалуйста, объясните ноль