Hatayı almayın, neden olduğunu anlayamıyorum, soyut yöntem uygulanan uygulanır. Genel anahtar kelimeyi eklemeyi denedim, ancak bu hiç yardımcı olmadı. İnternette soyut yöntemle ilgili örnekler okudum, ancak bunların çoğu void
.Soyut yöntem hatası uygulamalıdır, ancak var
soyut sınıfı:
public abstract class Osoba {
private String ime_prezime;
private char pol;
public Osoba(String ime_prezime, char pol) {
this.ime_prezime=ime_prezime;
this.pol=pol;
}
public String getImePrezime() { return ime_prezime; }
public void setImePrezime(String ime_prezime) { this.ime_prezime=ime_prezime; }
public char getPol() { return pol; }
public void setPol(char pol) { this.pol=pol; }
abstract int brojGodinaOsobe(Datum danasnji_datum);
}
Ve alt sınıf:
public class OsobaDatum extends Osoba{
private Datum datum_rodjenja;
public OsobaDatum(String ime_prezime, char pol, final Datum datum_rodjenja) {
super(ime_prezime, pol);
this.datum_rodjenja=datum_rodjenja;
}
public String toString() {
return "OsobaDatum: \n" + "Ime i prezime: " + getImePrezime() +
"\n" + "Pol: " + getPol() + "\nDatum rodjenja: "
+ datum_rodjenja.toString();
}
int brojGodina(Datum danasnji_datum) {
if (datum_rodjenja.getMesec() < danasnji_datum.getMesec()) {
return danasnji_datum.getGodina() - datum_rodjenja.getGodina();
}
else if (datum_rodjenja.getDan() <= danasnji_datum.getDan() &&
datum_rodjenja.getMesec() == danasnji_datum.getMesec()) {
return danasnji_datum.getGodina() - datum_rodjenja.getGodina();
}
else
return danasnji_datum.getGodina() - datum_rodjenja.getGodina() -1 ;
}
}
Tam olarak hangi hata? –
Üzgünüm, şimdi dosyayı düzenledim. Eclipse sadece dosyanın üst kısmına girmeye devam eder: 'OsobaDatum, kalıtsal soyut yöntemi ' – monolith937
uygulamalıdır. Lütfen hata mesajını ekleyin. 2. Sorun, 'OsobaDatum'un int brojGodinaOsobe' öğesini uygulaması gerektiğiyse, kodun sahip olduğu en yakın yöntemin, aynı ada sahip olmayan' int brojGodina (Datum danasnji_datum) 'olmasıdır. – KevinO