Object-oriented programming - Laboratory 3
Schedule
Next
Temat: IntelliJ - Java 3
IntelliJ
We will use IntelliJ on create Java program.
Third Java program
Relations
Inheritance
Composition
Aggregation
Asociation
Final code from classes
package com.company;
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
Student s = new Student("Jan", "Kowalski");
// s.setImie("Jan");
// s.setNazwisko("Kowalski");
s.przedstawSie();
System.out.println(s.getLiczbaStudentow());
System.out.println("Podaj imię");
String i = in.nextLine();
System.out.println("Podaj nazwisko");
String n = in.nextLine();
Student s2 = new Student(i,n);
s2.przedstawSie();
// System.out.println(s2.getLiczbaStudentow());
//
String inicjaly = new Obliczenia().inicjaly(s.getImie(), s.getNazwisko());
System.out.println("Inicjały to :"+inicjaly);
Wykladowca w = new Wykladowca("Krzysztof", "Dyczkowski");
w.setWynagrodzenie(2000);
Uczelnia u = new Uczelnia("UAM", w);
u.setRektor(w);
System.out.println("Nowe wynagrodzenie "+w.getWynagrodzenie());
u.getRektor().przedstawSie();
}
}
public class Rektor extends Wykladowca{
String tytul = "Jego Magnificencja Rektor ";
public Rektor(String imie, String nazwisko)
{
super(imie,nazwisko);
setWynagrodzenie(10000);
}
public Rektor(Wykladowca w)
{
super(w.getImie(), w.getNazwisko());
}
}
public class Student extends Czlowiek
{
private int nrIndeksu = 0;
private static int liczbaStudentow = 0;
//Aggregation
private Wykladowca promotor;
public Student(String imie, String nazwisko)
{
super(imie,nazwisko);
liczbaStudentow++;
}
public static int getLiczbaStudentow() {
return liczbaStudentow;
}
public void setPromotor(Wykladowca promotor) {
this.promotor = promotor;
}
}
public class Wykladowca extends Czlowiek {
private int wynagrodzenie;
//private Student studenNaDyzurze;
public Wykladowca(String imie, String nazwisko)
{
super(imie, nazwisko);
wynagrodzenie = 2000;
}
public int getWynagrodzenie() {
return wynagrodzenie;
}
public void setWynagrodzenie(int wynagrodzenie) {
this.wynagrodzenie = wynagrodzenie;
}
public void Dyzur(Student s)
{
s.przedstawSie();
//coś robią
//studenNaDyzurze = null;
}
}
public class Uczelnia {
private String nazwa;
//Composition
private Rektor rektor;
public Uczelnia(String nazwa, Wykladowca w)
{
this.nazwa = nazwa;
rektor = new Rektor(w);
}
public Wykladowca getRektor() {
return rektor;
}
public void setRektor(Wykladowca w) {
rektor = new Rektor(w);
}
}
public class Czlowiek
{
private String imie;
private String nazwisko;
public Czlowiek(String imie, String nazwisko)
{
this.imie = imie;
this.nazwisko = nazwisko;
}
public String getImie()
{
return imie;
}
public void setImie(String i)
{
System.out.println("Nie wolno zmieniać imienia w systemie");
}
public String getNazwisko() {
return nazwisko;
}
public void setNazwisko(String nazwisko) {
System.out.println("Nie wolno zmieniać nazwiska w systemie");
}
public void przedstawSie()
{
System.out.println("Nazywam się "+this.imie+" "+this.nazwisko);
}
}