Commit 512b23f1 by Patryk Czarnik

pierwsze metody

parent 3fcfc39f
...@@ -14,4 +14,27 @@ public class Osoba { ...@@ -14,4 +14,27 @@ public class Osoba {
String imie, nazwisko; String imie, nazwisko;
int wiek; int wiek;
// jeśli przed zmienną jest słowo static, to taka zmienna należy do klasy,
// a nie do poszczególnych obiektów
// w pamięci istnieje jeden egzemplarz tej zmiennej
static final int WIEK_PELNOLETNIOSCI = 18;
// metoda instancyjna (czyli bez słowa static) będzie uruchamiana na konkretnych obiektach
// i ma dostęp do pól tego obiektu
void przedstawSie() {
System.out.println("Nazywam się " + imie + " " + nazwisko + " i mam " + wiek + " lat.");
// można też tak, ale w Javie nie ma takiego obowiązku:
// System.out.println("Nazywam się " + this.imie + " " + this.nazwisko + " i mam " + this.wiek + " lat.");
}
int liczbaZnakow() {
int imieLength = imie == null ? 0 : imie.length();
int nazwiskoLength = nazwisko == null ? 0 : nazwisko.length();
return imieLength + nazwiskoLength;
}
boolean pelnoletnia() {
return wiek >= WIEK_PELNOLETNIOSCI;
}
} }
...@@ -23,6 +23,24 @@ public class Program1 { ...@@ -23,6 +23,24 @@ public class Program1 {
System.out.println("pola a: " + a.imie + " " + a.nazwisko + " " + a.wiek); System.out.println("pola a: " + a.imie + " " + a.nazwisko + " " + a.wiek);
System.out.println("pola b: " + b.imie + " " + b.nazwisko + " " + b.wiek); System.out.println("pola b: " + b.imie + " " + b.nazwisko + " " + b.wiek);
System.out.println();
// odwołanie do zmiennej statycznej - zalecany jest dostęp poprzez nazwę klasy:
System.out.println(Osoba.WIEK_PELNOLETNIOSCI);
// zadziałą też, ale jest niezalecany - dostęp poprzez obiekty:
System.out.println(a.WIEK_PELNOLETNIOSCI);
System.out.println();
a.przedstawSie();
b.przedstawSie();
System.out.println("długość imienia i nazwiska a: " + a.liczbaZnakow());
System.out.println(a.imie + (a.pelnoletnia() ? " jest " : " nie jest ") + "osobą pełnoletnią.");
if(b.pelnoletnia()) {
System.out.println(b.imie + " może kupić piwo");
}
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment