|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Feb 2005
Messaggi: 127
|
[java] quando si usa protected nelle variabili d'istanza?
salve a tutti,
qualcuno mi saprebbe dire quando si deve usare il modificatore protected nelle variabili d'istanza? non capisco a cosa possa servire se ottengo che le variabili private vengono ereditate egualmente..
__________________
the AUSTRALOPITECI |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2000
Messaggi: 1459
|
dunque, le variabili protected (a differenza di quelle private) sono accessibili dalle classi derivate ( o estese, per dirla in java language
esempio: Codice:
class A {
protected int val;
public A(){
val = 10;
}
}
class B extends A{
public B(){
val = 15; //OK! val è protected
}
class C{
private int val;
...
}
class D extends C{
public C(){
val = 15; //ERRORE: val è private
}
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Feb 2005
Messaggi: 127
|
grazie mille x l'ottima spiegazione
e lo stesso dovrebbe valere x i metodi? se sono private, non gli posso usare nelle classi estese, vero? Però mi sorge un dubbio.. io ho letto che anche se non si può modificare il valore, le variabili private vengono estese egualemente.. ma a che serve allora che ci siano variabili ereditate con le quali non si può farci nulla. per chiarezza: protected è una sorta di public valido esclusivamente all'interno di un package?
__________________
the AUSTRALOPITECI |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Jan 2004
Città: ROMA
Messaggi: 2055
|
Quote:
|
|
|
|
|
|
|
#5 | ||
|
Senior Member
Iscritto dal: May 2000
Messaggi: 1459
|
Quote:
) ma, a mio parere, l'utilizzo di protected primario dovrebbe essere quello ke ho descritto io (ed è l'interpretazione + generale del qualificatore di accesso protected, valido anke x C++) Tra l'altro, la visibilità package pura si ottiene nn specificando alcun qualificatore di accesso.maggiori dettagli qui http://www.allapplabs.com/glossary/access_control.htm Quote:
Uno sviluppatore potrebbe avere interesse ad esporre solo alcune caratteristiche di una classe, e a nasconderne altre magari + critiche ciauz |
||
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jan 2004
Città: ROMA
Messaggi: 2055
|
come vuoi... io ho solo spiegato il principale scopo delle variabili protette. Ciò è descritto su tutti i libri di fondamenti di informatica che trattino il java.
Scusate.. ho dimenticato un piccolo particolare che conferma, ovviamente, anche quello che dice 3dprogrammer: le variabili protette sono accessibili dalle classi derivate e da tutte quelle che sono all'interno dello stesso package. Ultima modifica di fbcyborg : 27-07-2005 alle 15:38. |
|
|
|
|
|
#7 |
|
Member
Iscritto dal: Feb 2005
Messaggi: 127
|
grazie ragazzi, siete stati davvero chiari
__________________
the AUSTRALOPITECI |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:30.












) ma, a mio parere, l'utilizzo di protected primario dovrebbe essere quello ke ho descritto io (ed è l'interpretazione + generale del qualificatore di accesso protected, valido anke x C++) Tra l'altro, la visibilità package pura si ottiene nn specificando alcun qualificatore di accesso.








