I modificatori d'accesso sono 4: public, protected, private e quello di default, che viene applicato quando non viene specificato nessun altro modificatore e permette l'accesso solo ai membri dello stesso package.Originariamente inviato da dany80
Salve ho trovato e fatto un esercizio sull'ereditarietà, ma una volta vista la soluzione mi è sorto un dubbio, vi posto qui sotto il file. Mi chiedevo perchè si omette la dichiarazione "public" nel costruttore di Rettangolo e Triangolo e negli altri metodi delle due classi? Premetto sono appredistacodice:public class Figura { private double base; private double altezza; public Figura(double base,double altezza){ this.base=base; this.altezza=altezza; } public double area(){ System.out.println("L'area per un oggetto di tipo figura non è definita"); return 0; } } //classe RETTANGOLO class Rettangolo extends Figura{ double base; double altezza; Rettangolo(double base,double altezza){ super(base,altezza); this.altezza=altezza; this.base=base; } public double area(){ return this.base*this.altezza; } } //Classe TRIANGOLO class Triangolo extends Figura{ double base; double altezza; Triangolo(double base,double altezza){ super(base,altezza); this.base=base; this.altezza=altezza; } public double area(){ return (this.base*this.altezza)/2; } } class CalcolaArea{ public static void main(String [] args){ Figura fig=new Figura(3,4); Figura ret= new Rettangolo(5,6); Figura tri=new Triangolo(3,5); fig.area(); System.out.println(ret.area()); System.out.println(tri.area()); } }
Per i dettagli: http://docs.oracle.com/javase/tutori...sscontrol.html