public class MultiSphere
{
  public static viod main(String[] args)
  { 
    double tiji1=0.0,area1=0.0;
    String shade1; 
    Sphere sphere=new Sphere();
    sphere.Get();
    tiji1=sphere.Count1();
    area1=sphere.Count2(); 
    shade1=new toString();
  }
}
import java.util.Scanner;
import java.lang.*;
public class Sphere{
  private int zhijin,r=0;
  private double tiji=0.0,area=0.0,pi=3.14;  public int Get()
  {
    Scanner scan=new Scanner(System.in);    System.out.println("Enter the zhijin of the ball:");
    zhijin=scan.nextInt();
  }
  public Count1()
  {
    r=zhijin/2;
    tiji=(4/3)*pi*Math.pow(r,3);
    
    System.out.println(tiji);
    return;
  }
  public Count2()
  {
    r=zhijin/2;
    area=4*pi*Math.pow(r,2);    System.out.println(area);
    return;
  }
  String toString()
  {
  String shade="the ball is round!";
  System.out.println(shade);
  return shade;
  }
}
     
  计算球面积和体积的...到底错哪啊...郁闷死了,高手帮忙谢谢

解决方案 »

  1.   

    问题多了,Get()方法返回int型变量,你的方法体的定义中竟然没有return int 型变量;
    Count()的两个方法并未返回任何变量,引用对象Sphere调用Count1(),Count2()方法,竟然分别绑定到两个双精度型变量 
      

  2.   

    import java.util.Scanner; 
    import java.lang.*; 
    public class MultiSphere 

        public static void main(String[] args) 
        {   
           Sphere sphere=new Sphere(1.2,2.4); 
           sphere.Get(); 
           sphere.Count1(); 
           sphere.Count2();   
           sphere.toString(); 
        } 
    }  class Sphere{ 
        private double zhijin; 
        private double pi=3.14,r=0.0; 
        private double tiji,area;
        public Sphere(double m,double n)
        {
           tiji=m;
           area=n;
        }
        
        public void Get() 
        { 
            Scanner scan=new Scanner(System.in);         System.out.println("Enter the zhijin of the ball:"); 
            zhijin=scan.nextDouble(); 
            
        } 
        public double Count1() 
        {   
            r=zhijin/2; 
            tiji=(4/3)*pi*Math.pow(r,3); 
            
            System.out.println(tiji); 
            return tiji; 
        } 
        public double Count2() 
        {   
            r=zhijin/2; 
            area=4*pi*Math.pow(r,2);         System.out.println(area); 
            return area; 
        } 
       public String toString() 
        { 
        String shade="the ball is round!"; 
        System.out.println(shade); 
        return shade; 
        } 

      

  3.   

    import java.util.Scanner;public class MultiSphere {    public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.print("请输入球体的半径;");
            double radius = sc.nextDouble();
            Sphere shpere = new Sphere(radius);
            System.out.println(shpere.toString());
            System.out.println("球的表面积:" + shpere.getSurfaceArea());
            System.out.println("球的体积:" + shpere.getVolume());
        }
    }class Sphere {    private double radius;
        
        public Sphere(double radius) {
            this.radius = radius;
        }    public double getVolume() {
            // 不能使用 4/3,这样的结果是1。要用 4.0/3
            return (4.0 / 3) * Math.PI * Math.pow(radius, 3);
        }    public double getSurfaceArea() {
            return 4 * Math.PI * Math.pow(radius, 2);
        }    public String toString() {   
            return "Sphere, radius is " + radius;
        }
    }