【发布时间】:2020-03-21 22:05:50
【问题描述】:
我正在研究 Java 中的继承,但我遇到了错误。我定义了一个带有名称字段的超类。据我所知,子类继承字段,继承的字段可以分配新值。我希望 getArea() 主要打印三角形的面积值,但我只打印了 0.0。希望您能够帮助我。 [更新示例]
public class Figure{
double base;
double height;
double area;
public Figure(double base, double height){
this.height=height;
this.base=base;
}
public double getArea(){return area};
}
public class Triangle extends Figure(){
public Triangle(double base, double height){
super(base,height);
}
area=0.5 * base * height;
}
public class Main{
public static void main{
Triangle triangle=new Triangle();
System.out.println(triangle.getArea());
}
}
【问题讨论】:
-
printMyName()实际上不打印任何内容,它返回名称。你不想用System.out.println什么的吗? -
可以包含构造函数吗?
-
那么问题到底是什么?
-
注意 java 命名约定。类名以大写字母开头,变量名以小写字母开头
-
你写的代码连编译都编译不了,怎么会打印出0。如果定义了显式构造函数,除非您自己指定,否则不会为您生成默认构造函数?
标签: java class inheritance