Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| From | "Dr.UgoGagliardelli" <do.not.spam@me.please> |
|---|---|
| Newsgroups | it.comp.java |
| Subject | Re: c'è anche in java una simile sintassi? |
| Date | 2015-10-14 11:49 +0200 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <mvl8fd$eqk$1@speranza.aioe.org> (permalink) |
| References | <mvh7nl$16a$1@speranza.aioe.org> |
Il 12.10.2015 23.12, Vittorio ha scritto:
> E' codice C# .
>
> Serve per impostare le due proprietà username\password ; Notare che
> Credentials è una interfaccia implementata dalla classe
> NetworkCredential, ma tale interfaccia non possiede le due proprietà
> username\password ( che sono possedute invece dalla classe
> NetworkCredential) ,per cui per impostarle si usa il costrutto con le
> due graffe.
>
>
> SmtpClient sc = new SmtpClient("hostpc",678);
>
> sc.Credentials = new System.Net.NetworkCredential()
> {
> UserName = "ffff",
> Password = "fhy"
> };
>
>
> Ciao
La sintassi esiste, ma per inizializzare un array, ad esempio:
String[] strings = new String[]{"ffff", "fhy"};
o creare una classe inner sia da un'interface, implementandone i metodi
e dichiarando i campi, cosi':
Credentials c = new Credentials() {
String UserName = "ffff", Password = "fhy";
public String getUserName () {
return UserName ;
}
public String getPassword() {
return Password ;
}
};
oppure cosi':
final String UserName = "ffff", Password = "fhy";
Credentials c = new Credentials() {
public String getUserName () {
return UserName ;
}
public String getPassword() {
return Password ;
}
};
La stessa cosa la puoi fare con una class, ma non potrai sostituirne i
campi, i campi che dichiarerai, anche con lo stesso nome avranno vita
indipendente, ad esempio:
Credentials c = new NetworkCredential() {
String UserName = "ffff", Password = "fhy";
public String getPassword() {
return Password ;
}
}
il metodo getPassword() ritornera' il nuovo campo Password dichiarato,
ma il campo UserName sara' ignorato. Inoltre, ogni accesso al campo
Password nei metodi della superclasse, non tramite il metodo sostituito
getPassword(), continueranno ad utilizzare la proprieta' originale.
In definitiva la sintassi:
Credentials c = new NetworkCredential() {
UserName = "ffff", Password = "fhy";
}
e' errata.
Ovviamente potrai accedere direttamente ai campi sempre che siano
accessibili:
Credentials c = new NetworkCredential();
((NetworkCredential)c).UserName = "ffff";
((NetworkCredential)c).Password = "fhy";
Back to it.comp.java | Previous | Next — Previous in thread | Next in thread | Find similar
c'è anche in java una simile sintassi? "Vittorio" <scipionelafricano@tim.it> - 2015-10-12 23:12 +0200
c'è anche in java una simile sintassi? "Alessandro Carraro (JUG Padova)" <carraro.alessandro@gmail.com> - 2015-10-12 22:05 -0700
Re: c'è anche in java una simile sintassi? "Dr.UgoGagliardelli" <do.not.spam@me.please> - 2015-10-14 11:49 +0200
Re: c'è anche in java una simile sintassi? "Vittorio" <scipionelafricano@tim.it> - 2015-10-14 12:17 +0200
Re: c'è anche in java una simile sintassi? "Dr.UgoGagliardelli" <do.not.spam@me.please> - 2015-10-14 13:19 +0200
csiph-web