[MontelLUG] Rogna con Java, ereditarietà (multipla?) ed interfacce (per guru)

Samuele samuele.zanin a tiscali.it
Lun 5 Ago 2019 18:04:05 CEST


Il 05/08/2019 09:20, Edoardo Prestianni ha scritto:
> Non ho capito bene, comunque ti posso dire che l'ereditarietà multipla 
> in Java non c'è.

Si, le classi non ce l'hanno, ma attraverso le interfacce si può in 
qualche modo ottenere.

Poi, sinceramente, non ho mai ben capito quanso si utilizzino. In tanti 
anni non mi è capitato di sentirne il bisogno.
In Windows si usano per creare oggetti COM.

> Una classe può estendere solo una classe, i.e.
>
> public class Parent  { }
>
> public class Child extends Parent { }
>
> In compenso, la stessa classe può implementare più di un interfaccia, 
> e la stessa interfaccia può venire implementata da più di una classe:

Io al momento ero riuscito a compilare facendo un paio di cast.
La mia situazione è:

Interfaccia IPadre, implementata dalla classe TPadre.

Io devo aggiungere un metodo a TPadre, quindi creo TFiglio che eredita 
da TPadre.
Analogamente dovrei aggiungere un metodo su IFiglio che deriva da IPadre.

Ma nel momento in cui devo dichiarare TFiglio, cosa devo dirgli:

public class TFiglio extend TPadre implements IFiglio, IPadre
?

Altra cosa: ho visto che non c'è la possibilità di passare dei parametri 
ad una procedura/funzione per riferimento, solo per valore.
Come cavolo si gestisce sta situazione?
Come faccio a far ritornare ad una funzione più valori? Devo per forza 
creare una classe per ogni funzione che deve ritornare più di un valore?


Maggiori informazioni sulla lista montellug