java - 构造函数 Time_Class_sub(int, int, int) 未定义

标签 java constructor

我不知道为什么有人告诉我构造函数 Time_Class_sub(int, int, int) 未定义。 int 4,5,6 已在括号中说明。

这是主类:

public class Time_Class_main {  
    public static void main(String [] args){
        Time_Class_sub linktosub = new Time_Class_sub(4, 5, 6);

        //linktosub.settime(3, 4, 65);

        System.out.println(linktosub.tomilitary());
    }
}

这是子类:

public class Time_Class_sub {
    private int hour;
    private int minute;
    private int second;

    public void Time_Class_sub(int h, int m, int s){
        //if the condition is met, assign hour = h. If not, h = 0
        hour = ((h >= 0 && h < 24) ? h : 0);
        minute = ((m >= 0 && m < 60) ? m : 0);
        second = ((s >= 0 && s < 60) ? s : 0);
    }

    public String tomilitary () {
        return String.format("%02d:%02d:%02d", hour, minute, second);
    }
}

最佳答案

类的构造函数没有返回类型——甚至没有返回类型。在您的例子中,您指定了一个普通的实例方法,该方法意外地与类具有相同的名称(请记住,实际上存在三个不同的字段 namespace 、类型名称和方法名称)。

只需删除 void 即可。

另外,请关注Java naming conventions - 你的类名应该是TimeClassSub

编辑:如果这是生产代码而不仅仅是作业,请为了神圣的一切而阅读 this .

关于java - 构造函数 Time_Class_sub(int, int, int) 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36810089/

相关文章:

c++ - 在类模板中指定构造函数模板的整数模板参数

java - 组合框不显示绑定(bind)值

java - 在java中计算子树WAVL中有多少内部叶子在O(1)中

c++ - 类构造函数中的条件 C++

Java 的 JavaScript 构造函数格式相似性

c++ - 构造后调用 delete 抛出异常

c++ - 通过基类 'create' 方法仅将对象创建为共享指针

java - 将单列 varchar 值回显到 Parquet 而不产生 Spark

java - 通过触摸屏幕移动矩形

java - 如果在一个事务中我们只在一个数据源上写入,是否可以避免 2PC 或手动处理提交? (J2CA0030E)