class person{
private String name;
private String location;
person(String name){
this.name = name;
location="beijing";
}
person(String name,String location){
this.name = name;
this.location = location;
}
public String info(){
return "name"+name+"location"+location;
}
} class teacher extends person{
private String capital;
teacher (String name,String capital){
this(name,capital,"beijing");
}
teacher (String name,String capital,String location){
super(name,location);
this.capital = capital;
}
public String info(){
return "name"+name+"location"+location+"capital"+capital;
}
}public class TestTeacher {
public static void main(String[] args) {
Person p1 = new Person("A");
Person p2 = new Person("B","shanghai");
System.out.println(p1.info());
System.out.println(p2.info());
Teacher t1 = new Teacher("D", "Professor");
System.out.println(t1.info());
}
}
private String name;
private String location;
person(String name){
this.name = name;
location="beijing";
}
person(String name,String location){
this.name = name;
this.location = location;
}
public String info(){
return "name"+name+"location"+location;
}
} class teacher extends person{
private String capital;
teacher (String name,String capital){
this(name,capital,"beijing");
}
teacher (String name,String capital,String location){
super(name,location);
this.capital = capital;
}
public String info(){
return "name"+name+"location"+location+"capital"+capital;
}
}public class TestTeacher {
public static void main(String[] args) {
Person p1 = new Person("A");
Person p2 = new Person("B","shanghai");
System.out.println(p1.info());
System.out.println(p2.info());
Teacher t1 = new Teacher("D", "Professor");
System.out.println(t1.info());
}
}
return "name"+name+"location"+location+"capital"+capital;
} name,location是不好访问的,因为你在父类中定义成了private,所以子类不好访问,你应该在父类中把name,location定义成public或者protected.
第一种:你的persno类和teacher类的类名的首字母是小写的 而你在TestTeacher类中
创建的对象都是大写
第二种:你的name字段和location字段是私有的 不是公有的 所以不能在info方法中调用给你改完的程序是
class person{
public String name;
public String location;
person(String name){
this.name = name;
location="beijing";
}
person(String name,String location){
this.name = name;
this.location = location;
}
public String info(){
return "name"+name+"location"+location;
}
} class teacher extends person{
private String capital;
teacher (String name,String capital){
this(name,capital,"beijing");
}
teacher (String name,String capital,String location){
super(name,location);
this.capital = capital;
}
public String info(){
return "name"+name+"location"+location+"capital"+capital;
}
}
public class TestTeacher {
public static void main(String[] args) {
person p1 = new person("A");
person p2 = new person("B","shanghai");
System.out.println(p1.info());
System.out.println(p2.info());
teacher t1 = new teacher("D", "Professor");
System.out.println(t1.info());
}
}
public class TestTeacher {
^
1 错误class Person{
protected String name;
protected String location;
Person(String name){
this.name = name;
location="beijing";
}
Person(String name,String location){
this.name = name;
this.location = location;
}
public String info(){
return "name"+name+"location"+location;
}
} class Teacher extends Person{
private String capital;
Teacher (String name,String capital){
this(name,capital,"beijing");
}
Teacher (String name,String capital,String location){
super(name,location);
this.capital = capital;
}
public String info(){
return "name"+name+"location"+location+"capital"+capital;
}
}public class TestTeacher {
public static void main(String[] args) {
Person p1 = new Person("A");
Person p2 = new Person("B","shanghai");
System.out.println(p1.info());
System.out.println(p2.info());
Teacher t1 = new Teacher("D", "Professor");
System.out.println(t1.info());
}
}