Ciao devo realizzare un programma che calcolila somma delle facce superiori di due dadi.
poi da main:codice:import java.util.*; class Dado{ int facciasuperiore; Random r; Dado(){ r=new Random(); facciasuperiore=0; } public int getFacciasuperiore(){ return facciasuperiore; } public void tiraDado(){ facciasuperiore= 1+r.nextInt(6); } /**restituisce la somma tra il valore della faccia superiore del dado che esegue il metodo e del dado specificato come parametro*/ public int piu(Dado d){ d.tiraDado(); facciasuperiore+=d.getFacciasuperiore(); return facciasuperiore; } public String toString(){ String s="la somma della faccia del dado più dado1 è:"+facciasuperiore; return s; } }
Il compilatore stampa come somma lo stesso valore della faccia del dado1.Perchè?codice:class TestDado{ public static void main(String[] args){ Dado dado=new Dado(); Dado dado1=new Dado(); dado.tiraDado(); dado1.tiraDado(); int faccia1=dado.getFacciasuperiore(); int faccia2=dado1.getFacciasuperiore(); System.out.println(dado1.piu(dado1)); System.out.println(dado1.toString()); } }![]()

Rispondi quotando