vittorio130881
19-02-2013, 14:09
ciao a tutti
allora oggi domanda su generics.
Prima domanda: guardate questo esempio di 3 classi semplicissime:
public class Persona
{
protected String nome, cognome;
protected int eta;
public Persona(String nome, String cognome, int eta)
{
this.nome = nome;
this.cognome = cognome;
this.eta = eta;
}
}
public class Professore extends Persona
{
public Professore (String nome, String cognome, int eta)
{
super(nome,cognome,eta);
}
}
public class Studente extends Persona
{
public Studente(String nome, String cognome, int eta)
{
super(nome,cognome,eta);
}
}
import java.util.Vector;
public class Archiviol
{
protected Vector persone;
public Archiviol()
{
persone = new Vector(10);
}
public void aggiungi(Persona p)
{
persone.add(p);
}
public void rimuovi(Persona p)
{
persone.remove(p);
}
public Persona get(int index)
{
return (Persona)persone.get(index);
}
}
quindi archivio è un vettore normalissimo.....non capisco nulla ma dico nulla dell'ultimo metodo get?? io i get li ho visti sempre senza richeiste di parametro.......mah.....secondo cosa significa quella (Persona) fra parentesi?
Ultima domanda non meno importante.......la soluzione con i generic l'ho capita e non la posto ma mettere <E> oppure <N> oppure <T> è la stessa cosa o significano cose differenti in base alla lettera? grazie
allora oggi domanda su generics.
Prima domanda: guardate questo esempio di 3 classi semplicissime:
public class Persona
{
protected String nome, cognome;
protected int eta;
public Persona(String nome, String cognome, int eta)
{
this.nome = nome;
this.cognome = cognome;
this.eta = eta;
}
}
public class Professore extends Persona
{
public Professore (String nome, String cognome, int eta)
{
super(nome,cognome,eta);
}
}
public class Studente extends Persona
{
public Studente(String nome, String cognome, int eta)
{
super(nome,cognome,eta);
}
}
import java.util.Vector;
public class Archiviol
{
protected Vector persone;
public Archiviol()
{
persone = new Vector(10);
}
public void aggiungi(Persona p)
{
persone.add(p);
}
public void rimuovi(Persona p)
{
persone.remove(p);
}
public Persona get(int index)
{
return (Persona)persone.get(index);
}
}
quindi archivio è un vettore normalissimo.....non capisco nulla ma dico nulla dell'ultimo metodo get?? io i get li ho visti sempre senza richeiste di parametro.......mah.....secondo cosa significa quella (Persona) fra parentesi?
Ultima domanda non meno importante.......la soluzione con i generic l'ho capita e non la posto ma mettere <E> oppure <N> oppure <T> è la stessa cosa o significano cose differenti in base alla lettera? grazie