2 回答

TA貢獻1851條經驗 獲得超4個贊
問題是 :-
您從未調用過
gData()
將初始化您的半徑的函數。當您調用 時,您正在創建一個新對象
display()
。而不是calculate()
從同一個對象調用。
請找到下面的工作代碼:-
import java.util.*;
class Data
{
double r;
public void gdata()
{
System.out.println("Enter Radius");
Scanner s = new Scanner(System.in);
r=s.nextFloat();
}
}
class Area extends Data
{
double area;
public void calculate()
{area = r*r*3.14;}
public void display()
{
this.gdata();
this.calculate();
System.out.println("Area of Circle= "+area);}
}
class Volume extends Area
{
final double pi=3.141;
double v;
public void calculate()
{v=(4*r*r*r*pi)/3;}
public void display()
{
this.gdata();
this.calculate();
System.out.println("Volume of Sphere= "+v);}
}
class Postlab
{
public static void main(String args[])
{
Area obj1 = new Area();
Area obj2 = new Volume();
obj1.display();
obj2.display();
}
}
添加回答
舉報