1. Utwórz klasę posiadającą przynajmniej 6 pól różnego typu. 2. Do klasy utwórz przynajmniej 3 konstruktory. 3. Skróć zapis przynajmniej jednego konstruktora by wywoływał inny konstruktor przez this. 4. Utwórz metody dostępowe (getter, setter) dla pól klasy. 5. Utwórz 6 obiektów, wywołując różne konstruktory (nie zawsze znamy wartości pól obiektów w momencie ich tworzenia). 6, Ustaw za pomocą settera wartości pól, które nie były znane w momencie wywoływania konstruktora. 7. Utwórz zmienną, która przyjmie wartość przechowywaną przez pole obiektu.
class Klasa {
private int liczba;
private String napis;
private boolean wartoscLogiczna;
private double liczbaZmiennoprzecinkowa;
private char znak;
private byte bajt;
// Konstruktor 1 - przyjmuje wszystkie pola jako argumenty
public Klasa(int liczba, String napis, boolean wartoscLogiczna,
double liczbaZmiennoprzecinkowa, char znak, byte bajt) {
this.liczba = liczba;
this.napis = napis;
this.wartoscLogiczna = wartoscLogiczna;
this.liczbaZmiennoprzecinkowa = liczbaZmiennoprzecinkowa;
this.znak = znak;
this.bajt = bajt;
}
// Konstruktor 2 - przyjmuje tylko liczbę i napis jako argumenty
public Klasa(int liczba, String napis) {
this(liczba, napis, false, 0.0, ' ', (byte) 0);
}
// Konstruktor 3 - przyjmuje tylko napis jako argument
public Klasa(String napis) {
this(0, napis);
}
// Gettery
public int getLiczba() {
return liczba;
}
public String getNapis() {
return napis;
}
public boolean getWartoscLogiczna() {
return wartoscLogiczna;
}
public double getLiczbaZmiennoprzecinkowa() {
return liczbaZmiennoprzecinkowa;
}
public char getZnak() {
return znak;
}
public byte getBajt() {
return bajt;
}
// Settery
public void setLiczba(int liczba) {
this.liczba = liczba;
}
public void setNapis(String napis) {
this.napis = napis;
}
public void setWartoscLogiczna(boolean wartoscLogiczna) {
this.wartoscLogiczna = wartoscLogiczna;
}
public void setLiczbaZmiennoprzecinkowa(double liczbaZmiennoprzecinkowa) {
this.liczbaZmiennoprzecinkowa = liczbaZmiennoprzecinkowa;
}
public void setZnak(char znak) {
this.znak = znak;
}
public void setBajt(byte bajt) {
this.bajt = bajt;
}
}
Aby utworzyć obiekty i użyć różnych konstruktorów oraz setterów, można użyć tego kodu:
// Utworzenie obiektów za pomocą różnych konstruktorów
Klasa obiekt1 = new Klasa(10, "Napis", true, 1.5, 'A', (byte) 100);
Klasa obiekt2 = new Klasa(20, "Inny napis");
Klasa obiekt3 = new Klasa("Jeszcze inny napis");
// Ustawienie wartości pól za pomocą setterów
obiekt2.setWartoscLogiczna(false);
obiekt3.setLiczbaZmiennoprzecinkowa(3.14);
// Pobranie wartości pól za pomocą getterów
int liczba1 = obiekt1.getLiczba();
String napis1 = obiekt1.getNapis();
boolean wartosc1 = obiekt1.getWartoscLogiczna();
double liczbaZmiennoprzecinkowa1 = obiekt1.getLiczbaZmiennoprzecinkowa();
char znak1 = obiekt1.getZnak();
byte bajt1 = obiekt1.getBajt();
int liczba2 = obiekt2.getLiczba();
String napis2 = obiekt2.getNapis();
boolean wartosc2 = obiekt2.getWartoscLogiczna();
double liczbaZmiennoprzecinkowa2 = obiekt2