System.out.println(var) geeft null terug ???

Status
Niet open voor verdere reacties.

Clemens Schalkw

Gebruiker
Lid geworden
5 dec 2007
Berichten
166
Ik snap niet wat ik over het hoofd zie, maar mijn variabelen worden niet geset ofzo ?????

Code:
public class Person {
	private String userName = getUserName();
	private String passWord = getPassWord();

	public static void main(String[] args) {
		new Person();
	}
	
	public Person () {
		System.out.println(userName);
		System.out.println(passWord);  
	}
	
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassWord() {
		return passWord;
	}
	public void setPassWord(String passWord) {
		this.passWord = passWord;
	}
}
 
Klopt. Je set je variabelen met
Code:
private String userName = getUserName();
	private String passWord = getPassWord();

Die functies zijn:
Code:
public String getUserName() {
		return userName;
	}

	public String getPassWord() {
		return passWord;
	}

Je geeft de variable "userName" de waarde die "getUserName()" oplevert. Die functie levert de waarde van "userName" op. Met andere woorden je geeft "userName" de waarde van "userName" en die is null. Hetzelfde doe je met "passWord".
 
Nog al logisch je set je username toch nergens??
Je set ze wel maar dan roep je de functie getUsername aan
En de functie getUsername die returnt de variabele username.... :rolleyes:

Dat is niet echt logisch... Je moet natuurlijk wel ergens je username een waarde geven... Of je functie andere variabelen laten aanroepen.
 
pfffffffffff, ja inderdaad.
Zo is het beter :

Code:
public class Person {
	private String userName;
	private String passWord;

	public static void main(String[] args) {
		Person p = new Person();
		p.setPassWord("my Password");
		p.setUserName("my Username");
		System.out.println(p.getUserName());
		System.out.println(p.getPassWord());
	}

	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassWord() {
		return passWord;
	}
	public void setPassWord(String passWord) {
		this.passWord = passWord;
	}
}

Of zo :

Code:
public class Person {
	private String userName;
	private String passWord;

	public Person() {
		
	}
	
	public Person(String userName, String passWord) {
		this.userName = userName;
		this.passWord = passWord;
	}
	
	public static void main(String[] args) {
		Person p = new Person("my username", "my password");
		System.out.println(p.getUserName());
		System.out.println(p.getPassWord());
	}

	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassWord() {
		return passWord;
	}
	public void setPassWord(String passWord) {
		this.passWord = passWord;
	}
}
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan