A
azur03
Gast
Hallo,
habe jetzt ein Java Buch und versuche alles, nochmal von Anfang an mir anzueignen. Bei den inneren Klassen stößt mein Gehirn jedoch auf heftigen Widerstand. Kann mir jemand das Programmbeispiel erklären:
ich denke, ich habe es soweit: erst wird wird
ein neuer Account generiert und somit gleich der Konstruktor aufgerufen. Dadurch wird die Unterklasse aufgerufen. Ich dachte, dass die Klasse perm private wäre und eigentlich nur in der Klasse Account aufgerufen werden kann. Aber warum funktioniert diese Zeile: "Account.Permissions perm=acct.getPermissions();"?
cu azur
habe jetzt ein Java Buch und versuche alles, nochmal von Anfang an mir anzueignen. Bei den inneren Klassen stößt mein Gehirn jedoch auf heftigen Widerstand. Kann mir jemand das Programmbeispiel erklären:
Code:
//Datei: Account.java
public class Account{
private int userID;
private Permissions perm;
public Account(int userID){
this.userID=userID;
perm=new Permissions();
}
public static class Permissions{
public boolean canRead;
public boolean canWrite;
}
public Permissions getPermissions(){
return perm;
}
}
Code:
//Datei: AccountTest.java
public class AccountTest{
public static void main(String[] args){
Account acct = new Account (1);
Account.Permissions perm=acct.getPermissions();
perm.canRead=true;
System.out.println(perm.canRead);
System.out.println(perm.canWrite);
}
}
ich denke, ich habe es soweit: erst wird wird
Code:
Account acct = new Account (1);
cu azur