19
Oggetti Java

Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Embed Size (px)

Citation preview

Page 1: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

OggettiJava

Page 2: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Un esempio di oggetto

• Punto nel piano cartesiano• Definito da due coordinate: x e

y

x

yP

Page 3: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

La classe Punto

+...()+getx() : double+setx(in x : double)+gety() : double+sety(in y : double)

-x : double-y : double

Punto

public class Punto {private double x;private double y;public double getx(){

return x;}public void setx(double x){

this.x=x;}public double gety(){

return y;}public void sety(double y){

this.y=y;}

}

Page 4: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

this

• this è un riferimento all’oggetto• Es. this.x = x • In questo caso serve per

differenziare l’attributo x dell’oggetto dal parametro x del metodo

Page 5: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

I metodi

• La sintassi di un metodo è la seguente:

<modificatore> <tipo> <nome> <parametri>){

<corpo>

}

Page 6: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Modificatore

• Definisce la visibilità– public– private– protected

• E altre informazioni – static (appartiene alla classe)– final (non modificabile)

Page 7: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Firma (Segnatura)

• La firma di un metodo è composta da:– Nome e lista ordinata dei tipi dei

parametri• Es. la firma di setx è

(setx,double)• La firma non comprende il tipo del

metodo né i nomi dei parametri

Page 8: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Overloading

• Sovraccarico• Più metodi hanno lo stesso

nome ma firma diversa (numero e/o tipo di parametri)

Page 9: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Gli oggettipublic class ProvaPunto {

public static void main(String arg[]{

Punto p;

p=new Punto();

System.out.print(p.getx());

}

}

Px

y

?

Page 10: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Inizializzazione degli attributi

• E’ possibile definire un valore iniziale per gli attributi

public class Punto {

private double x=0;

private double y=0;

…}

Page 11: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Costruttori

• Il costruttore è un metodo che ha lo stesso nome della classe

• Non ha modificatore e non ha tipo• Il costruttore viene chiamato

quando si istanzia un oggetto della classe

• Possono esistere più costruttori con firma (segnatura) diversa

Page 12: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Costruttori per PuntoPunto() {

x=0;y=0;

}

Punto(double x) {this.x=x;y=0;

}

Punto(double x,double y) {this.x=x;this.y=y;

}

Punto p,q,r;

p=new Punto();

q=new Punto(3.5);

r=new Punto(5,3.2);

Page 13: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Metodo distanzaOrigine

• Restituisce la distanza del punto dall’origine degli assi cartesiani

• Utilizziamo i metodi della classe Math

public double distanzaOrigine() {return (Math.sqrt(Math.pow(x,2)+Math.pow(y,2)));

}

Page 14: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Metodo stampa

• Visualizza le coordinate del punto nella forma (x,y)

public void stampa(){String rappresent="( ";rappresent=rappresent+x;rappresent=rappresent+" , ";rappresent=rappresent+y;rappresent=rappresent+" )";System.out.print(rappresent);

}

Page 15: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Metodo toString

• Restituisce una rappresentazione dell’oggetto sotto forma di stringapublic String toString(){

return "( "+x+" , "+y+" )";

}

Page 16: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Ridefinizione del metodo stampa

• Avendo definito il metodo toString possiamo rivedere l’implementazione del metodo stampa

public void stampa(){

System.out.print(this.toString());}

Page 17: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Metodo distanzaDaPunto

• Restituisce la distanza da un punto passato come parametro

Page 18: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Metodo piùVicinoOrigine

• Restituisce true se il metodo in esame è più vicino all’origine di un punto che riceve come parametro

Page 19: Oggetti Java. Un esempio di oggetto Punto nel piano cartesiano Definito da due coordinate: x e y x y P

Metodo quadrante

• Restituisce il numero del quadrante

12

3 40,0