Come so che è meglio avere meno duplicazioni possibili del codice, quindi ho deciso di dichiarare solo uno scanner per tutta la classe, ma dove devo chiudere l'oggetto dello scanner o non è necessariamente chiuderlo, cosa fa la chiusura dello scanner.dove chiudere lo scanner utilizzato più di una volta nella classe
private Scanner scanner;
/**
* Constructor for objects of class Scanner
*/
public Ssss()
{
// initialise instance variables
scanner = new Scanner(System.in);
}
public void enterYourName()
{
System.out.println("Enter your Name");
String name = scanner.nextLine();
System.out.println("Your name is:" + name);
}
public void enterYourAge()
{
System.out.println("Enter your Age");
int age = scanner.nextInt();
System.out.println("Your age is: " + age);
}
Dove chiamate i metodi 'enterYour ***'? (Si prega di fornire un codice per dove si chiama quei metodi). Quando gli input sono terminati, lo scanner dovrebbe essere chiuso. –
Non li chiamo veramente perché sto usando bluej lo facciamo manualmente –
Questa è una domanda eccellente e svela alcuni principi sottili e profondi del design OO: incapsulamento e composizione, e attribuendo responsabilità a chi appartiene. –