Commit d493bcb9 by Patryk Czarnik

Teoria klas - klasa Uczen

parent bdc2023c
package klasy;
public class LepszyProgram {
public static void main(String[] args) {
// Dzięki temu, że mamy konstruktor ustawiający wszystkie pola, możemy tak:
Uczen adam = new Uczen("Adam", "Abacki", "2d", 2007);
Uczen bartek = new Uczen("Bartek", "Babecki", "2k", 2008);
System.out.println(adam);
System.out.println(bartek);
adam.dodajOcene(5);
adam.dodajOcene(4);
adam.dodajOcene(4);
bartek.dodajOcene(1);
bartek.dodajOcene(3);
bartek.dodajOcene(3);
bartek.dodajOcene(3);
System.out.println("Oceny Adama: " + adam.oceny + " średnia: " + adam.sredniaOcen());
System.out.println("Oceny Bartka: " + bartek.oceny + " średnia: " + bartek.sredniaOcen());
// W Javie obiektów nie usuwa się z pamięci - Java sama po nas "sprząta"
}
}
package klasy;
public class Program {
public static void main(String[] args) {
// Dzięki temu, że zdefiniowaliśmy klasę Uczen, możemy teraz utworzyć OBIEKT typu Uczen:
Uczen marek = new Uczen();
System.out.println(marek);
// Ten obiekt zawiera te zmienne, które określiliśmy w klasie.
System.out.println("Początkowe dane: " + marek.imie
+ " " + marek.nazwisko + " rok " + marek.rocznik);
// do zmiennych w obiekcie możemy wpisać dane
marek.imie = "Marek";
marek.nazwisko = "Markowski";
marek.klasa = "4c";
marek.rocznik = 2005;
System.out.println("Ustawione dane: " + marek.imie
+ " " + marek.nazwisko + " rok " + marek.rocznik);
// Może istnieć wiele obiektów tej samej klasy.
Uczen ala = new Uczen();
ala.imie = "Alicja";
ala.nazwisko = "Kowalska";
ala.rocznik = 2008;
ala.klasa = "1a";
System.out.println("Inna osoba: " + ala.imie + " " + ala.nazwisko + " rok "
+ ala.rocznik + " z klasy " + ala.klasa);
}
}
package klasy;
import java.util.ArrayList;
import java.util.List;
public class Uczen {
// Tutaj deklarujemy zmienne (na które się też mówi "pole"/"field" albo "atrybut")
// To są takie rzeczy, które będzie posiadać każdy uczeń (każdy obiekt tej klasy).
String imie, nazwisko;
String klasa;
int rocznik;
List<Integer> oceny = new ArrayList<>();
// Konstruktory - określają, w jaki sposób będzie można tworzyć obiekty
public Uczen() {
}
public Uczen(String imie, String nazwisko, String klasa, int rocznik) {
this.imie = imie;
this.nazwisko = nazwisko;
this.klasa = klasa;
this.rocznik = rocznik;
}
public String toString() {
return imie + " " + nazwisko + " z klasy " + klasa;
}
public void dodajOcene(int ocena) {
oceny.add(ocena);
}
public double sredniaOcen() {
double suma = 0;
for(Integer ocena : oceny) {
suma += ocena;
}
return suma / oceny.size();
}
}
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