Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Program.java
- import java.util.ArrayList;
- abstract class Osoba{
- String ime;
- String prezime;
- public abstract String toString();
- Osoba(String ime, String prezime){
- this.ime = ime;
- this.prezime = prezime;
- }
- }
- class Student extends Osoba{
- private double prosek;
- Student(String ime, String prezime, double prosek) {
- super(ime, prezime);
- this.prosek = prosek;
- }
- ArrayList<Student> filtrirajStudente(Osoba[] osobe){
- ArrayList<Student> studenti = new ArrayList<>();
- for(Osoba osoba : osobe)
- if(osoba instanceof Student)
- studenti.add((Student) osoba);
- return studenti;
- }
- @Override
- public String toString() {
- return "Student: " + ime + " " + prezime + " - prosek: " + prosek;
- }
- Student najveciProsek(ArrayList<Student> lista){
- Student s = lista.get(0);
- for (Student student : lista) {
- if (s.getProsek() < student.getProsek())
- s = student;
- }
- return s;
- }
- private double getProsek(){
- return prosek;
- }
- }
- class Nastavnik extends Osoba{
- private String zvanje;
- Nastavnik(String ime, String prezime, String zvanje) {
- super(ime, prezime);
- this.zvanje = zvanje;
- }
- @Override
- public String toString() {
- return "Nastavnik: " + zvanje + " " + ime + " " + prezime;
- }
- }
- public class Program {
- public static void main(String[] args) {
- //Ne moze se inicijalizovati objekat apstraktne klase, ali ovo moze:
- //Polimorfizam: u objekat nadklase ide objekat nadklase
- /*
- Osoba osoba = new Student("Pera", "Petrović", 7.68);
- System.out.println(osoba.podaci());
- */
- //Posledica:
- //osoba.getProsek(); <- cannot resolve method getProsek()
- Osoba osobe[] = {
- new Nastavnik("Vojislav", "Šešelj", "dr"),
- new Student("Milan", "Ivanović", 8.00),
- new Student("Sanja", "Perić", 9.35),
- new Student("Uroš", "Jovović", 9.82),
- new Student("Nikola", "Stefanović", 6.54)
- };
- ArrayList<Student> listaStudenata = new ArrayList<>();
- ArrayList<Student> studenti = new ArrayList<>();
- Student s = new Student("", "", 0);
- studenti = s.filtrirajStudente(osobe);
- /*
- for(Osoba o : osobe){
- //Bitno za projekat (muzicka prodavnica):
- if(o instanceof Student){
- System.out.println("O je Student.");
- Student s = (Student)o;
- //Pristup metodama podklase:
- System.out.println(s.getProsek());
- System.out.println("Klasa: " + s.getClass());
- }
- System.out.println(o);
- }
- */
- studenti.forEach(System.out::println);
- Student tmp = studenti.get(0);
- System.out.println("Student sa najboljim prosekom: " + tmp.najveciProsek(studenti));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement