Odpowiedź :
Odpowiedź:
//klasa kwadrat
package com.company;
public class Kwadrat {
private int bok;
public Kwadrat() {
bok = 1;
}
public Kwadrat(int bok) {
this.bok = bok;
}
public Kwadrat(Kwadrat kwadrat){
this.bok = kwadrat.bok;
}
public int zwrocBok(){
return this.bok;
}
public int pole(){
return bok * bok;
}
}
//klasa prostokat
package com.company;
public class Prostokat extends Kwadrat{
private int wysokosc;
public Prostokat() {
super();
this.wysokosc = 1;
}
public Prostokat(int bok, int wysokosc) {
super(bok);
this.wysokosc = wysokosc;
}
public Prostokat(Prostokat prostokat) {
super(prostokat);
this.wysokosc = prostokat.wysokosc;
}
public int zwrocWysokosc(){
return wysokosc;
}
public int pole(){
return super.zwrocBok() * wysokosc;
}
}
// main
package com.company;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
int typ;
int bok;
int wysokosc = 0;
try {
BufferedReader bf = new BufferedReader(new FileReader("sciezka do pliku"));
String line;
while ((line = bf.readLine()) != null) {
StringTokenizer st = new StringTokenizer(line);
typ = Integer.parseInt(st.nextToken());
bok = Integer.parseInt(st.nextToken());
if (st.hasMoreTokens()) {
wysokosc = Integer.parseInt(st.nextToken());
}
if (typ == 1) {
Kwadrat kwadrat = new Kwadrat(bok);
System.out.println("Figura: kwadrat" + " bok " + kwadrat.zwrocBok() + " pole " + kwadrat.pole());
}
if (typ == 2) {
Prostokat prostokat = new Prostokat(bok, wysokosc);
System.out.println("Figura: prostokat" + " bok " + prostokat.zwrocBok() + " wysokosc " + prostokat.zwrocWysokosc() + " pole " + prostokat.pole());
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
Wyjaśnienie:
To jeszcze nie skończone i narazie taka wersja beta. Niby pokazuje dobre wyniki, ale muszę jeszcze parę rzeczy poprawić, niestety nie mam czasu narazie. Potem może usiądę do tego, ale myślę, że to co jest wystarczy żeby dostać pozytywną ocenę i tak