谢谢,求救。Java出现找不到主方法,将主方法定义的问题
publicclassRect{doublewidth;doubleheight;doublegetArea(){returnwidth*height;}}classEx...
public class Rect {
double width;
double height;
double getArea(){
return width*height;
}
}
class Example1_2{
public static void main(String[] args) {
Rect rectangle;
rectangle=new Rect();
rectangle.width=1.819;
rectangle.height=1.5;
double area=rectangle.getArea();
System.out.println("矩形的面积:"+area);
}
}
我保存了名为Rect.java,也出现了Example1_2.class可为什么还是出现下面的错误 展开
double width;
double height;
double getArea(){
return width*height;
}
}
class Example1_2{
public static void main(String[] args) {
Rect rectangle;
rectangle=new Rect();
rectangle.width=1.819;
rectangle.height=1.5;
double area=rectangle.getArea();
System.out.println("矩形的面积:"+area);
}
}
我保存了名为Rect.java,也出现了Example1_2.class可为什么还是出现下面的错误 展开
展开全部
因为你这个源文件是Rect.java ,内容中是 public Rect ,也就是说你这个文件中“全局”对外可见的类是Rect;而Example1_2类的可见性是 “包” 级别的。
建议你把文件名改为 Example1_2.java , 然后把Example1_2 改为 public Example1_2 ; 而把Rect前的public 去掉。
有关Java中 类的可见性 的定义建议你找本Java基础的书籍看看。
简单说明如下:
1. 类的可见性由类名前的关键字决定: public;友好的(无关键字);protected;private;
2. public:公开类,在包内,包外都可见,是可见性级别最高的;
3. 友好的:也是默认的安全级别,包外不可见,包内可见.用在内部类同protected级别相同.
4. protected:保护级,只能用于内部类.对类及子类(包内子类,包外子类不可见)和包内其它类可见.
5. private:私有级,只能用于内部类,只对类本身可见。
6. 一个Java类文件中必须有且只能有一个public修饰的外部类
7.可调用的main函数必须处于“全局”可见域内,如6条所说的public修饰的外部类;也可以是public修饰的外部类的内部public类
建议你把文件名改为 Example1_2.java , 然后把Example1_2 改为 public Example1_2 ; 而把Rect前的public 去掉。
有关Java中 类的可见性 的定义建议你找本Java基础的书籍看看。
简单说明如下:
1. 类的可见性由类名前的关键字决定: public;友好的(无关键字);protected;private;
2. public:公开类,在包内,包外都可见,是可见性级别最高的;
3. 友好的:也是默认的安全级别,包外不可见,包内可见.用在内部类同protected级别相同.
4. protected:保护级,只能用于内部类.对类及子类(包内子类,包外子类不可见)和包内其它类可见.
5. private:私有级,只能用于内部类,只对类本身可见。
6. 一个Java类文件中必须有且只能有一个public修饰的外部类
7.可调用的main函数必须处于“全局”可见域内,如6条所说的public修饰的外部类;也可以是public修饰的外部类的内部public类
展开全部
public static void main(String[] args) {}属于程序入口的主方法,所以这个类应该放在public 修饰的的类中,你的class Example1_2{}没有加public修饰,所以会报这个错误。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
JAVA只能有一个public,而这个文件名要与类名相同,你执行这段代码后,会在类Rect中查找主方法。而你将主方法定义在类Example1_2,而不是定义在类Rect中,所以找不到主方法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public要放在主类前面,你这的话main在Example1_2所以应该是 public class Example1_2、class Rect(去了这个类的public)文件名改为Example1_2.java就对了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
保存名为Exampie1_2.java试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询