Indeks Lab8-8.01 kol
ob Nr pytania Nowa figura Metoda Lezy_na z wykorzystaniem polimorfizmu Licznik wyboru figury(koło)
wyświetlany po kliknięciu na listę JMenu
Licznik przesunięć bieżącej figury(elipsa) wyświetlany po kliknięciu na pomocą JButton
Ocena główna (jako średnia arytmetyczna ocen cząstkowych)
6098 + Koło 5 2 2 3.0
6217 + Elipsa 5 2 2 3
2433 + Koło 4.5 (kolo powinno dziedziczyć po kwadracie) 5 5 5.0
5850 + Elipsa 5 4.5
Można dla całej rodziny klas używać tylko jednej metody lezy_na – wtedy każda klas powinna mieć metodę wirtualną getSzerokosc()
2 4
5595 - Koło 5 2 3.5 3.5
5833 - Koło 5 3.5 2.0 3.5
5917 + -/Elipsa ?
??? ??? ??? ???
5944 + Koło 5 2 2 3
5893 + Koło
Elipsa 4 3 2 3
5815 + Koło 5 4.5
Można dla całej rodziny klas używać tylko jednej metody lezy_na – wtedy każda klas powinna mieć metodę wirtualną getSzerokosc()
5 5
6000 Koło 4 Kolo dziedzicząc po klasie Kwadrat ma dwa atrybuty dlugosc – niepotrzebnie dodano atrybut
2 2 3-
5819 + Koło 5 4.5
Można dla całej rodziny klas używać tylko jednej metody lezy_na – wtedy każda klas powinna mieć metodę wirtualną getSzerokosc()
5 5
5837 + Elipsa 5 4.5
Można dla całej rodziny klas używać tylko jednej metody lezy_na – wtedy każda klas powinna mieć metodę wirtualną getSzerokosc()
2 4
6222 - Elipsa 5 4.5
Można dla całej rodziny klas używać tylko jednej metody lezy_na – wtedy każda klas powinna mieć metodę wirtualną getSzerokosc()
2 4.5
5835 + Koło
5888 + Koło 2 2 2 2
6012 + Koło 4 Kolo dziedzicząc po klasie Kwadrat ma dwa atrybuty dlugosc– niepotrzebnie dodano atrybut
3.0
Metoda lezy_na miała poprawić hermetyzację klas używanych w pętli public void mouseClicked(MouseEvent e) {
int x_ = e.getX();
int y_ = e.getY();
for (int i = 0; i < ile; i++) {
if (figury[i].podajX() + figury[i].podajDl() >= x_ &&
2 3.0
figury[i].podajX() <= x_ &&
figury[i].podajY() + figury[i].podajDl() >= y_ &&
figury[i].podajY() <= y_) { biezacy = i;
break; }
wg instrukcji dla lab4 na:
public void mouseClicked(MouseEvent e) // Invoked when the mouse button has been clicked (pressed and released) on a component.
{ int posX = e.getX();
int posY = e.getY();
for (int i = 0; i < ile; i++) {
if (figury[i].czy_lezy(posX, posY)) { biezacy = i;
System.out.println(biezacy);
break;
} }
requestFocus();
repaint(); }
5804 + Elipsa
Elipsa ??? ??? ??? ???
5948 + Koło 4 Kolo dziedzicząc po klasie Kwadrat ma dwa atrybuty dlugosc i szerokosc– niepotrzebnie dodano atrybut
2 2 3-
5905 + Koło 5 4.5
Można dla całej rodziny klas używać tylko jednej metody lezy_na – wtedy każda klas powinna mieć metodę wirtualną getSzerokosc()
5 5
5668 + Koło 4 Kolo dziedzicząc po klasie Kwadrat ma dwa atrybuty dlugosc i szerokosc– niepotrzebnie dodano atrybut
5 2 3.5
5887 + Elipsa 4
Klasa Elipsa posiada trzy atrybuty class Elipsa extends Kwadrat { protected int width;
protected int height;
i protected int dlugosc; dziedziczony od klasy Kwadrat.
4 Można dla całej rodziny klas używać tylko jednej metody lezy_na – wtedy każda klas powinna mieć metodę wirtualną getSzerokosc()
Również definicja metody lezy_na w klasie Elipsa powinna być usunięta.
public boolean lezy_na(int x, int y) { if (podajX() + width >= x && podajX() <= x && podajY() + width >= y && podajY() <= y) { System.out.println("Elipsa");
return true; } else return false; }
2 3.5
5953 + Koło 4 Kolo dziedzicząc po klasie Kwadrat ma dwa atrybuty dlugosc – niepotrzebnie dodano atrybut
5 3 Brak wyznaczania liczby
wyborów dla każdej figury niezależnie
4
5834 + Koło 4 Kolo dziedzicząc po klasie Kwadrat ma dwa atrybuty dlugosc – niepotrzebnie dodano atrybut
5 2 3.5
5811 + Elipsa 5 5 5 5