2 回答

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
問題是 :-
您從未調(diào)用過
gData()
將初始化您的半徑的函數(shù)。當(dāng)您調(diào)用 時(shí),您正在創(chuàng)建一個(gè)新對(duì)象
display()
。而不是calculate()
從同一個(gè)對(duì)象調(diào)用。
請找到下面的工作代碼:-
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();
}
}
添加回答
舉報(bào)