java错误提示类重复_java - 当我使用javac编译多个.java文件时,出现了一些“重复类”错误,但是我在代码中找不到错误 - 堆栈内存溢出...

当我使用javac来编译多个.java文件时,出现了“重复类”错误,但是我在代码中找不到错误。

有四个.java文件,所有这些文件都在Windows中的同一文件夹中。

MyApp.java文件中的代码:

import dx.*;

import dx.shapes.*;

class MyApp {

public static void main(String[] args) {

System.out.println("This is a test application.");

Rectangle rect = new Rectangle(10, 20);

rect.Speak();

Circle circle = new Circle(15);

circle.Speak();

Worker worker = new Worker();

worker.Speak();

}

}

Rectangle.java文件中的代码:

package dx.shapes;

public class Rectangle {

private int x, y;

private int width, height;

public Rectangle() {

this(0, 0, 1, 1);

}

public Rectangle(int width, int height) {

this(0, 0, width, height);

}

public Rectangle(int x, int y, int width, int height) {

this.x = x;

this.y = y;

this.width = width;

this.height = height;

}

public void Speak(){

System.out.println("I'm a rectangle, width:" + this.width + ", height:" + this.height);

}

}

Circle.java文件中的代码:

package dx.shapes;

public class Circle {

private int x, y;

private int radius;

public Circle() {

this(0, 0, 10);

}

public Circle(int radius) {

this(0, 0, radius);

}

public Circle(int x, int y, int radius) {

this.x = x;

this.y = y;

this.radius = radius;

}

public void Speak(){

System.out.println("I'm a circle, radius:" + this.radius);

}

}

Worker.java文件中的代码:

package dx;

public class Worker {

public void Speak(){

System.out.println("I'm a worker.");

}

}

在Windows命令行中,我使用javac编译以下源代码:

javac MyApp.java Rectangle.java Circle.java Worker.java

但是我唯一得到的是错误列表:

Rectangle.java:3: error: duplicate class: dx.shapes.Rectangle

public class Rectangle {

^

MyApp.java:8: error: cannot access Rectangle

Rectangle rect = new Rectangle(10, 20);

^

bad source file: .\Rectangle.java

file does not contain class Rectangle

Please remove or make sure it appears in the correct subdirectory of the sourcepath.

Circle.java:3: error: duplicate class: dx.shapes.Circle

public class Circle {

^

MyApp.java:11: error: cannot access Circle

Circle circle = new Circle(15);

^

bad source file: .\Circle.java

file does not contain class Circle

Please remove or make sure it appears in the correct subdirectory of the sourcepath.

Worker.java:3: error: duplicate class: dx.Worker

public class Worker {

^

MyApp.java:14: error: cannot access Worker

Worker worker = new Worker();

^

bad source file: .\Worker.java

file does not contain class Worker

Please remove or make sure it appears in the correct subdirectory of the sourcepath.

6 errors

我不知道怎么了 为什么?


版权声明:本文为weixin_42202078原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。