2016-03-20 20 views
-4

süper yapıcı gelemedi Ayrıca Human.javaBen İnsan sınıf var

Ben bir Öğretmen sınıf

Teacher.java

Ama benim Retired_teacher

public class Retired_teacher extends Teacher{ 

public int retirement_year; 

Retired_teacher(Teacher t, int ry_){ 

    super Teacher(name,surname,age,gender); 
    String na=get_name(); 
    System.out.println("A new teacher " + na + " " + surname + "is constructed"); 
    System.out.println("A teacher is retired"); 
    retirement_year=ry_; 
süper kurucu ekleyin edemedim

super hata veriyor. Bunu nasıl düzeltebilirim?

.210
+1

Resim gönderirken kodlarınızı ekleyin. – ridvankucuk

cevap

1

Sen super yanlış aradığınız, sadece çağırmalıdır:

super(name,surname,age,gender); 

sınıf adı gerek yok.

Ayrıca Teacher sınıfında yapıcı argümanları alıyor ve burada sadece vermekteyiz. Bunu aklınızdan çıkarmayın, başka bir argüman eklemediğiniz sürece bu işe yaramaz.

+0

Bu düzeltme çözüldü –

+2

Bu% 100 doğrudur. Hatanızın ne olduğunu bile söylemedin. ** Sorunuzu tam hata ile düzenleyin (yığın izini ekleyin) ve neyin çalışmadığını belirtin. – Idos

+0

Hayır, hayır ... Hiçbir şeye bağlantı göndermeyin. Devlet * kendi kelimelerinizle * neyin işe yaramadığı, hatanın ne olduğu, ne olması gerektiği. – Idos

0

Öğretmen sınıfını ve yapıcısını tanımladınız.

Teacher(String na_,String sur_,int a,String g_,String le_); 

ancak yapıyorsun:

super Teacher(name,surname,age,gender); 

ve böyle bir yapıcı

bu sınıfta tanımlı değil ...

böylece her iki yapıcı aşırı ve

oluşturmanız gerekir
Teacher(String na_,String sur_,int a,String g_); 

veya geçişleri tamamen geçirin.


PS: Bir Retired_teacher bir Öğretmen ama yanlış (aktif veya değil) olarak ayarlanmış bir boolean üyesi ile olan Düşüncemde,

üyeden sadece bir değişiklik için yeni bir sınıf yaratarak olabilir çok fazla.