java 里边要实现一个抽象方法返回一个父类的私有属性的值怎么写?
继承这个抽象类,如何写呢? 抽象方法要返回shape的值 abstract class Figure { private String shape; public Figure(String shape) { this.shape=shape; } public abstract String setShape(); }
继承这个抽象类,如何写呢? 抽象方法要返回shape的值 abstract class Figure { private String shape; public Figure(String shape) { this.shape=shape; } public abstract String setShape(); }
答案:abstract class Figure
{
private String shape;
public Figure(String shape)
{
this.shape=shape;
}
//这里添加一个get方法,便于子类访问父类的属性
public String getShape() {
return shape;
}
public abstract String setShape();
}
public class A extends Figure {
public A(String shape) {
super(shape);
}
//通过父类的get访问器访问其私有属性
public String setShape() {
return super.getShape();
}
}
在main方法里面测试:
A a=new A("aa");
System.out.println(a.setShape());
其他:public class FigureTest extends Figure
{
public String setShape()
{
return super.shape;
}
}
//没有开编译器 可以不写但如果子类需要带参数的构造方法,就必须写一个无参的,然后super(); 构造方法随意,想怎么写怎么写,当然也可以不写的。那个抽象方法是必须
上一个:java编程π=4*(1-1/3+1/5-1/7+1/9-…-1/(2*i-1)+1/(2*i+1)) 当i=10,100,1000时的π值
下一个:这个Java程序为什么会出现这种情况