Un esercizio che ho svolto chiede la costruzione della classe TestQuadrato contenente un metodo main() che istanzi un oggetto di tipo Quadrato con lato di valore 5. Successivamente bisogna stampare perimetro e area dell'oggetto appena creato.
La mia soluzione è la seguente:
codice:
public class TestQuadrato
{
public static void main(String args[])
{
Quadrato oggetto = new Quadrato(5);
}
}
codice:
public class Quadrato
{
public int lato;
public Quadrato(int lato)
{
int perimetro = lato * 4;
int area = lato * lato;
System.out.println("il perimetro è: " + perimetro);
System.out.println("l'area è: " + area);
}
}
mentre la soluzione proposta dal manuale è questa:
codice:
public class TestQuadrato {
public static void main(String args[]) {
Quadrato quadrato = new Quadrato();
quadrato.lato = 5;
int perimetro = quadrato.perimetro();
System.out.println(perimetro);
int area = quadrato.area();
System.out.println(area);
}
}
codice:
public class Quadrato {
public int lato;
public int perimetro() {
int perimetro = lato * 4;
return perimetro;
}
public int area() {
int area = lato * lato;
return area;
}
}
La mia soluzione funziona però vorrei capire se concettualmente è più corretto fare le "operazioni" all'interno del metodo main (come fatto nella soluzione proposta dal manuale) oppure all'interno del costruttore (come fatto da me).