Napisz interfejs Vehicle zawierający metody:
void start()void stop()Napisz klasę Car implementującą interfejs Vehicle i
zawierającą pola:
private String make;
private String color;
private String model;
private int year;
Zaimplementuj odpowiedni konstruktor, metodę toString() oraz
metody wymagane przez interfejs (np. wypisujące odpowiedki komunikat).
Funkcja main() powinna utworzyć i wypisać kilka obiektów
klasy Car oraz przetestować działanie funkcji interfejsu.
Dana jest następująca definicja klasy SortedArray:
public class SortedArray {
private Integer[] array;
public SortedArray(int n) { ... } // allocate array with n elements
public SortedArray() { ... } // default ctor; allocate array with 10 elements
public void sort(Comparator<Integer> comparator) { ... }
@Override
public String toString() { ... }
}
Oba konstruktory oprócz alokacji tablicy inicjalizują ją losowymi wartościami.
Funkcja main() tworzy obiekt typu SortedArray a następnie
sortuje tablicę z tego obiektu wg następujących kryteriów:
Każde wywołanie funkcji sortującej powinno zawierać definicję klasy anonimowej
implementującej interfejs Comparator z odpowiednią wersją funkcji
porównującej compare(), jak w przykładzie poniżej.
array.sort(new Comparator<>() {
@Override
public int compare(Integer o1, Integer o2) {
...
}
});
Napisz klasę Person zawierającą: imię, nazwisko i wiek osoby. W
funkcji głównej utwórz tablicę (lub listę) obiektów klasy Person, wypisz ją, a
następnie posortuj wg imienia, nazwiska i wieku. Po każdym sortowaniu Wypisz
zawartość tablicy. Napisz funkcję sortującą sort(Person[] array,
Comparator<Person> comparator) (podobnie jak w zadaniu 2, tym razem
Comparator porównuje obiekty typu Person).