程序将区域显示为“ 0”

时间:2019-10-19 13:55:44

标签: java methods

程序将计算球体的面积和体积。这是一个作业问题,因此不能更改很多格式。

我认为这里的主要问题是变量范围,但是我无法识别它。

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()

    {

        Area obj = new Area();
        obj.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()

    {   

        Volume obj = new Volume();
        obj.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();

    }

}

2 个答案:

答案 0 :(得分:0)

在某些时候,您必须调用Data的{​​{1}},否则gdata()将始终为0。

答案 1 :(得分:0)

问题是:-

  1. 您从未调用过> npm start > html-ejs-webpack-config-issue-demo@1.0.0 start /Users/user/Dev/html-ejs-webpack-config--issue-demo > webpack-dev-server --mode development ℹ 「wds」: Project is running at http://localhost:8080/ ℹ 「wds」: webpack output is served from / ℹ 「wds」: Content not from webpack is served from /Users/user/Dev/html-ejs-webpack-config--issue-demo ✖ 「wdm」: Hash: f9f8666f87ab7acd22cd Version: webpack 4.41.2 Time: 595ms Built at: 19/10/2019 15:34:18 Asset Size Chunks Chunk Names index.html 1.72 KiB [emitted] main.js 360 KiB main [emitted] main Entrypoint main = main.js [0] multi (webpack)-dev-server/client?http://localhost:8080 ./src 40 bytes {main} [built] [./node_modules/ansi-html/index.js] 4.16 KiB {main} [built] [./node_modules/ansi-regex/index.js] 135 bytes {main} [built] [./node_modules/html-entities/index.js] 231 bytes {main} [built] [./node_modules/loglevel/lib/loglevel.js] 7.68 KiB {main} [built] [./node_modules/strip-ansi/index.js] 161 bytes {main} [built] [./node_modules/webpack-dev-server/client/index.js?http://localhost:8080] (webpack)-dev-server/client?http://localhost:8080 4.29 KiB {main} [built] [./node_modules/webpack-dev-server/client/overlay.js] (webpack)-dev-server/client/overlay.js 3.51 KiB {main} [built] [./node_modules/webpack-dev-server/client/socket.js] (webpack)-dev-server/client/socket.js 1.53 KiB {main} [built] [./node_modules/webpack-dev-server/client/utils/createSocketUrl.js] (webpack)-dev-server/client/utils/createSocketUrl.js 2.89 KiB {main} [built] [./node_modules/webpack-dev-server/client/utils/log.js] (webpack)-dev-server/client/utils/log.js 964 bytes {main} [built] [./node_modules/webpack-dev-server/client/utils/reloadApp.js] (webpack)-dev-server/client/utils/reloadApp.js 1.59 KiB {main} [built] [./node_modules/webpack-dev-server/client/utils/sendMessage.js] (webpack)-dev-server/client/utils/sendMessage.js 402 bytes {main} [built] [./node_modules/webpack/hot sync ^\.\/log$] (webpack)/hot sync nonrecursive ^\.\/log$ 170 bytes {main} [built] [./src/index.js] 0 bytes {main} [built] + 18 hidden modules ERROR in Error: Child compilation failed: Module build failed (from ./node_modules/html-webpack-plugin/lib/loader.js): SyntaxError: Unexpected token ) - Function - lodash.js:14870 [html-ejs-webpack-config--issue-demo]/[lodash]/lodash.js:14870:16 - lodash.js:473 apply [html-ejs-webpack-config--issue-demo]/[lodash]/lodash.js:473:27 - lodash.js:15254 [html-ejs-webpack-config--issue-demo]/[lodash]/lodash.js:15254:16 - lodash.js:475 apply [html-ejs-webpack-config--issue-demo]/[lodash]/lodash.js:475:27 - lodash.js:6563 [html-ejs-webpack-config--issue-demo]/[lodash]/lodash.js:6563:16 - lodash.js:14869 Function.template [html-ejs-webpack-config--issue-demo]/[lodash]/lodash.js:14869:20 - SyntaxError: Unexpected token ) - compiler.js:79 childCompiler.runAsChild [html-ejs-webpack-config--issue-demo]/[html-webpack-plugin]/lib/compiler.js:79:16 - Compiler.js:343 compile [html-ejs-webpack-config--issue-demo]/[webpack]/lib/Compiler.js:343:11 - Compiler.js:681 hooks.afterCompile.callAsync.err [html-ejs-webpack-config--issue-demo]/[webpack]/lib/Compiler.js:681:15 - Hook.js:154 AsyncSeriesHook.lazyCompileHook [html-ejs-webpack-config--issue-demo]/[tapable]/lib/Hook.js:154:20 - Compiler.js:678 compilation.seal.err [html-ejs-webpack-config--issue-demo]/[webpack]/lib/Compiler.js:678:31 - Hook.js:154 AsyncSeriesHook.lazyCompileHook [html-ejs-webpack-config--issue-demo]/[tapable]/lib/Hook.js:154:20 - Compilation.js:1423 hooks.optimizeAssets.callAsync.err [html-ejs-webpack-config--issue-demo]/[webpack]/lib/Compilation.js:1423:35 Child html-webpack-plugin for "index.html": 1 asset Entrypoint undefined = index.html [./node_modules/html-webpack-plugin/lib/loader.js!./index.ejs] 922 bytes {0} [built] [failed] [1 error] ERROR in ./index.ejs (./node_modules/html-webpack-plugin/lib/loader.js!./index.ejs) Module build failed (from ./node_modules/html-webpack-plugin/lib/loader.js): SyntaxError: Unexpected token ) at Function (<anonymous>) at /Users/user/Dev/html-ejs-webpack-config--issue-demo/node_modules/lodash/lodash.js:14870:16 at apply (/Users/user/Dev/html-ejs-webpack-config--issue-demo/node_modules/lodash/lodash.js:473:27) at /Users/user/Dev/html-ejs-webpack-config--issue-demo/node_modules/lodash/lodash.js:15254:16 at apply (/Users/user/Dev/html-ejs-webpack-config--issue-demo/node_modules/lodash/lodash.js:475:27) at /Users/user/Dev/html-ejs-webpack-config--issue-demo/node_modules/lodash/lodash.js:6563:16 at Function.template (/Users/user/Dev/html-ejs-webpack-config--issue-demo/node_modules/lodash/lodash.js:14869:20) at Object.module.exports (/Users/user/Dev/html-ejs-webpack-config--issue-demo/node_modules/html-webpack-plugin/lib/loader.js:28:22) ℹ 「wdm」: Failed to compile. 来初始化半径。

  2. 您在调用gData()时正在创建一个新对象。 而不是从同一对象调用display()

请在下面找到工作代码:-

calculate()