qq_38238296
吴一尘
采纳率80%
2017-04-20 09:32 阅读 8.0k
已采纳

提示在类中找不到 main 方法!!!!

代码如下: class AreaAndLength{
double sideA,sideB,sideC,area,length;
boolean b;
public AreaAndLength(double a,double b,double c){
sideA=a;
sideB=b;
sideC=c;
if(a+b>c)
{
this.b=true;
}
else{
this.b=false;
}
}
double getLength(){
return sideA+sideB+sideC;
}
public double getArea(){
if(b){
double p=(sideA+sideB+sideC)/2.0;
area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
return area;
}
else{
System.out.println("不是一个三角形,不能计算面积");
return 0;
}
}
}
class Rectangle{
double width,height,area;
Rectangle(double w,double h){
width=w;
height=h;
}
double getLength(){
return (width+height)*2;
}
double getArea(){
return width*height;
}
}
class Circle{
double radius,area;
Circle(double r){
radius=r;
}
double getLength(){
return 6.18*radius;
}
double getArea(){
return 3.14*radius*radius;
}
}
class AreaAndLength{
double length,area;
Circle circle=null;
AreaAndLength trangle=null;
Rectangle rectangle=null;
Circle cicle=new Circle(6.0);
AreaAndLength trangle=new AreaAndLength(3.0,2.0,2.0);
Rectangle rectangle=new Rectangle(3.0,5.0);
public static void main(String[] args){

length=circle.getLength();
System.out.println("圆的周长:"+length);
area=circle.getArea();
System.out.println("圆的面积:"+area);
length=trangle.getLength();
System.out.println("三角形的周长:"+length);
area=trangle.getArea();
System.out.println("三角形的面积:"+area);
area=rectangle.getArea();
System.out.println("矩形的面积:"+area);
length=rectangle.getLength();
System.out.println("矩形的周长:"+length);
}
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

13条回答 默认 最新

  • 已采纳
    w666en 取经修身齐天下 2017-04-20 11:23

    /*出現"提示在类中找不到 main方法"的原因是:創建對象的位置不對,應該在主方法內去創建*/
    public class Demo {
    static double length, area;
    public static void main(String[] args) {
    Circle circle = new Circle(6.0);//圓
    AreaAndLength aal=new AreaAndLength(2,3,3);//三角形
    Rectangle re=new Rectangle(5,3);//矩形

        length = circle.getLength();
        System.out.println("圆的周长:" + length);//37.08
        area = circle.getArea();
        System.out.println("圆的面积:" + area);
        length = aal.getLength();
        System.out.println("三角形的周长:" + length);
        area = aal.getArea();
        System.out.println("三角形的面积:" + area);
        area = re.getArea();
        System.out.println("矩形的面积:" + area);
        length = re.getLength();
        System.out.println("矩形的周长:" + length);
    }
    

    }
    class AreaAndLength {
    double sideA, sideB, sideC, area, length;
    boolean b;

    public AreaAndLength(double a, double b, double c) {
        sideA = a;
        sideB = b;
        sideC = c;
        if (a + b > c) {
            this.b = true;
        } else {
            this.b = false;
        }
    }
    
    double getLength() {
        return sideA + sideB + sideC;
    }
    
    public double getArea() {
        if (b) {
            double p = (sideA + sideB + sideC) / 2.0;
            area = Math.sqrt(p * (p - sideA) * (p - sideB) * (p - sideC));
            return area;
        } else {
            System.out.println("不是一个三角形,不能计算面积");
            return 0;
        }
    }
    

    }
    class Rectangle {
    double width, height, area;

    Rectangle(double w, double h) {
        width = w;
        height = h;
    }
    /*矩形面積的周長方法*/
    double getLength() {
        return (width + height)*2;
    }
    /*矩形面積的方法*/
    double getArea() {
        return width*height;
    }
    

    }
    class Circle {
    double radius, area;

     Circle(double r) {
        radius = r;
    }
     /*圓的周長方法*/
    double getLength() {
        return 6.18 * radius;
    }
    /*圓的面積方法*/
    double getArea() {
        return 3.14 * radius * radius;
    }
    

    }

    点赞 1 评论 复制链接分享
  • renmingl renmingl 2017-04-20 09:59

    要么 在别的类里面 调用这个类,这么在这个类里面写个main方法,然后调用你自己的初始化方法

    点赞 3 评论 复制链接分享
  • lunhui2016 lunhui2016 2017-04-20 09:46

    你是没写main函数吧?

    点赞 1 评论 复制链接分享
  • xuanzhangran 转角人生 2017-04-20 10:05

    看你的括号。对应好了没有。

    点赞 1 评论 复制链接分享
  • Application_net Application_net 2017-04-20 11:12

    你把main函数写到第一个类里面去了

    点赞 1 评论 复制链接分享
  • hzh0816 hzh0816 2017-04-20 09:47

    AreaAndLength这个类怎么有两个, 还有就是你所有的类写在一个类中的么

    点赞 评论 复制链接分享
  • qq_36074751 qq_36074751 2017-04-20 09:49

    main 函数的类必须是public的,而且类名和文件名称必须一致

    点赞 评论 复制链接分享
  • qq_34658785 卖太妃糖的古尔丹 2017-04-20 09:51

    。。。你从哪个类运行程序,就必须有而且只能有一个main方法,要不然程序从哪开始执行

    点赞 评论 复制链接分享
  • hzh0816 hzh0816 2017-04-20 09:53

    AreaAndLength trangle=null;
    Rectangle rectangle=null;
    Circle cicle=new Circle(6.0);
    AreaAndLength trangle=new AreaAndLength(3.0,2.0,2.0);
    Rectangle rectangle=new Rectangle(3.0,5.0);
    trangle,rectangle这两个变量也重了, 可改为:
    AreaAndLength trangle=null;
    Rectangle rectangle=null;
    Circle cicle=new Circle(6.0);
    trangle=new AreaAndLength(3.0,2.0,2.0);
    rectangle=new Rectangle(3.0,5.0);

    点赞 评论 复制链接分享
  • jhg121361843 jhg121361843 2017-04-20 10:38

    要么 在别的类里面 调用这个类,这么在这个类里面写个main方法,然后调用你自己的初始化方法

    点赞 评论 复制链接分享
  • qq_36500554 Java小爬虫 2017-04-20 11:19

    在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等。
    给你一个简单的例子:
    **

    • Java中的main()方法详解 */ public class HelloWorld { public static void main(String args[]) { System.out.println("Hello World!"); } }
    点赞 评论 复制链接分享
  • qq_35827307 qq_35827307 2017-04-24 09:14

    你把main函数写到一个类里面去了

    点赞 评论 复制链接分享
  • qq_38238296 吴一尘 2017-04-26 08:46

    谢谢回答!!我自己写错了 = = 抱歉!!!

    点赞 评论 复制链接分享

相关推荐