【问题标题】:Beginner Java application constructor issue初学者Java应用程序构造函数问题
【发布时间】:2014-07-22 15:57:53
【问题描述】:

我有一个名为MyDate 的类,可以在另一个项目中访问(使用该类的实例时,所有方法都会在弹出窗口中显示)。但是,当我运行应用程序时,在MyDate 的实例上使用构造函数时似乎出现了错误。如果我使用默认构造函数或带参数的构造函数,这没有区别。

这是我得到的错误:

Exception in thread "main" java.lang.NoClassDefFoundError: MyClasses/MyDate
    at Lesson2Test.main(Lesson2Test.java:10)

这是我的类文件:

package MyClasses;

import java.io.PrintStream;
import java.util.Scanner;

public class MyDate {
private int Month, Day, Year;

public MyDate(){
    Month = 1;
    Day = 1;
    Year = 2000;
}

public MyDate(int m, int d, int y){
    Month = m;
    Day = d;
    Year = y;
}

public int GetMonth(){
    return Month;
}

public int GetDay(){
    return Day;
}

public int GetYear(){
    return Year;
}

public void SetMonth(int m){
    Month = m;
}

public void SetDay(int d){
    Day = d;
}

public void SetYear(int y){
    Year = y;
}

public void Write(PrintStream ps){
    ps.printf("%d\t%d\t%d", Month, Day, Year);
}

public void Read(Scanner s){
    Month = s.nextInt();
    Day = s.nextInt();
    Year = s.nextInt();
}
}

这是我的主要类文件:

import bin.MyClasses.MyDate;
import bin.MyClasses.MyTime;

public class Lesson2Test {

public static void main(String[] args) {
    // TODO Auto-generated method stub

    MyDate date1;
    date1 = new MyDate(5, 5, 5);
    date1.Write(System.out);

}

}

【问题讨论】:

    标签: java class import constructor


    【解决方案1】:

    那个“箱子”在哪里。在您的导入语句中来自?我认为应该只是“import MyClasses.MyDate”

    如果您在从导入语句中删除“bin”时在 IDE 中遇到问题(您的 IDE 不会自动完成您的类名),那么您的设置中可能存在类路径问题。您的类路径可能指向包含“bin”的目录,但它应该指向“bin”目录本身。

    【讨论】:

      猜你喜欢
      • 2022-11-03
      • 2016-07-28
      • 1970-01-01
      • 2013-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-15
      • 1970-01-01
      相关资源
      最近更新 更多