Java 日食说:";所选内容不包含主类型";当有';没有编码错误
在检查无错误并运行java编码后,eclipse告诉我“选择不包含主类型”。我已经检查了Java 日食说:";所选内容不包含主类型";当有';没有编码错误,java,polymorphism,Java,Polymorphism,在检查无错误并运行java编码后,eclipse告诉我“选择不包含主类型”。我已经检查了publicstaticvoidmain(String[]args){,它是正确的。我还搜索了其他人遇到的一些类似问题,似乎我没有找到任何适合我的解决方案。希望你们能帮我解决这个问题,如果有,将非常感谢!我的代码如下: import java.util.Random; class Shape { protected Color color; protected Point point; public Sh
publicstaticvoidmain(String[]args){
,它是正确的。我还搜索了其他人遇到的一些类似问题,似乎我没有找到任何适合我的解决方案。希望你们能帮我解决这个问题,如果有,将非常感谢!我的代码如下:
import java.util.Random;
class Shape {
protected Color color;
protected Point point;
public Shape (Color color, Point point)
{ this.color = color;
this.point = point;
}
public String Type(){return " ";}
}
class Rectangle extends Shape{
public Rectangle(Color color, Point point){
super(color, point);}
public String Type(){return "Rectangle";}
}
class Triangle extends Shape{
public Triangle(Color color, Point point){
super(color, point);
}
public String Type(){return "Triangle";}
}
class Eclipse extends Shape{
public Eclipse(Color color, Point point){
super(color, point);}
public String Type(){return "Eclipse";}
}
public class ShapeTest{
public static void main(String[] args){
Color color = new Color(50, 100, 150);
Point point = new Point(50,50);
Shape[] theShape = {
new Rectangle(color, point),
new Triangle(color, point),
new Eclipse(color, point)
};
Shape shapechoice;
Random select = new Random();
for (int i = 0; i < 10; i ++)
{
shapechoice = theShape[select.nextInt(theShape.length)];
System.out.println("The " + (i + 1) + "type you chose is: " + shapechoice.Type());;
}
}
}
import java.util.Random;
阶级形态{
保护色;
保护点;
公共形状(颜色、点、点)
{this.color=color;
这个点=点;
}
公共字符串类型(){return”“;}
}
类矩形扩展形状{
公共矩形(颜色、点){
超级(颜色,点);}
公共字符串类型(){返回“矩形”;}
}
类三角形扩展形状{
公共三角形(颜色、点){
超级(颜色、点);
}
公共字符串类型(){return“Triangle”;}
}
类Eclipse扩展了Shape{
公共日食(颜色、点){
超级(颜色,点);}
公共字符串类型(){return“Eclipse”;}
}
公共类形状测试{
公共静态void main(字符串[]args){
颜色=新颜色(50、100、150);
点=新点(50,50);
形状[]形状={
新矩形(颜色、点),
新三角形(颜色、点),
新月食(颜色、点)
};
形状如冰;
随机选择=新随机();
对于(int i=0;i<10;i++)
{
shapechoice=形状[select.nextInt(形状长度)];
System.out.println(“您选择的“+(i+1)+”类型是:“+shapechoice.type());”;;
}
}
}
此代码运行正常,只需为每个类创建不同的文件,然后执行形状测试类
类名-Shape.java
class Shape {
protected Color color;
protected Point point;
public Shape (Color color, Point point)
{ this.color = color;
this.point = point;
}
public String Type(){return " ";}
}
Rectangle.java
class Rectangle extends Shape{
public Rectangle(Color color, Point point){
super(color, point);}
public String Type(){return "Rectangle";}
}
class Triangle extends Shape{
public Triangle(Color color, Point point){
super(color, point);
}
public String Type(){return "Triangle";}
}
Triangle.java
class Rectangle extends Shape{
public Rectangle(Color color, Point point){
super(color, point);}
public String Type(){return "Rectangle";}
}
class Triangle extends Shape{
public Triangle(Color color, Point point){
super(color, point);
}
public String Type(){return "Triangle";}
}
Eclipse.java
class Eclipse extends Shape{
public Eclipse(Color color, Point point){
super(color, point);}
public String Type(){return "Eclipse";}
}
java--执行这个类
public class ShapeTest{
public static void main(String[] args){
Color color = new Color(50, 100, 150);
Point point = new Point(50,50);
Shape[] theShape = {
new Rectangle(color, point),
new Triangle(color, point),
new Eclipse(color, point)
};
Shape shapechoice;
Random select = new Random();
for (int i = 0; i < 10; i ++)
{
shapechoice = theShape[select.nextInt(theShape.length)];
System.out.println("The " + (i + 1) + "type you chose is: " +shapechoice.Type());;
}
}
}
公共类ShapeTest{
公共静态void main(字符串[]args){
颜色=新颜色(50、100、150);
点=新点(50,50);
形状[]形状={
新矩形(颜色、点),
新三角形(颜色、点),
新月食(颜色、点)
};
形状如冰;
随机选择=新随机();
对于(int i=0;i<10;i++)
{
shapechoice=形状[select.nextInt(形状长度)];
System.out.println(“您选择的“+(i+1)+”类型是:“+shapechoice.type());”;;
}
}
}
所有这些代码都在一个文件中?或者它们是在单独的文件中编写的,您只需将它们粘贴到这里即可。?我的Eclipse并没有这样说,而是很高兴地运行您的代码。换句话说,您的问题是不可复制的。可能是重复的。没有规则规定它们必须在单独的文件中。这不是规则,但我告诉您一种更好的编码方式…并且在我的日食中成功运行我也成功运行了OP的文字代码。