我正在学习 Java 中的抽象类,但我对这个错误有一点问题:没有可访问类型 zad_II_1 的封闭实例。必须使用 zad_II_1 类型的封闭实例来限定分配(例如 xnew A(),其中 x 是 zad_II_1 的实例)。我做错了什么?这是代码:
public class zad_II_1 {
abstract class Pacjent{
String imie;
Pacjent(String imie){
this.imie=imie;
}
abstract String nazwiskoo();
abstract String PodajChorobe();
abstract String PodajLek();
String nazwisko(){
return imie;
}
String choroba(){
return PodajChorobe();
}
String leczenie(){
return PodajLek();
}
}
class ChoryNaGlowe extends Pacjent{
ChoryNaGlowe(String imie){
super(imie);}
String nazwiskoo(){
return imie;
}
String PodajChorobe(){return "glowa";}
String PodajLek(){return "aspiryna";}
}
class ChoryNaNoge extends Pacjent{
ChoryNaNoge(String imie){
super(imie);}
String nazwiskoo(){
return imie;
}
String PodajChorobe(){return "noga";}
String PodajLek(){return "gips";}
}
class ChoryNaDyspepsje extends Pacjent{
ChoryNaDyspepsje(String imie){
super(imie);}
String nazwiskoo(){
return imie;
}
String PodajChorobe(){return "dyspepsja";}
String PodajLek(){return "wegiel";}
}
public static void main(String[] args) {
Pacjent[] pacjenci = { new ChoryNaGlowe("Janek"),
new ChoryNaNoge("Edzio"),
new ChoryNaDyspepsje("Marian")
};
for (Pacjent p : pacjenci) {
System.out.println("Pacjent: " + p.nazwisko() + '\n' +
"Chory na: " + p.choroba() + '\n' +
"Zastosowano: " + p.leczenie() +"\n\n"
);
}
}
}