有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java添加类似于其他构造函数的构造函数意味着什么?

再添加两个类似于第c部分和第d部分中描述的设置时间方法的构造函数

c部分:编写一个方法setTime(小时,分钟),如果给定值有效,则设置时间

    public void SetTime(int newHour, int newMinute)
        { 
            if (hourIsValid = true)
                  hour = newHour;
            if (minuteIsValid = true)
                 minute = newMinute;
        }

d部分:编写另一个方法setTime(hour,minute,isAm),如果给定值有效,则设置时间。给定的小时数应在1到12之间。如果时间是上午时间,则参数isAM为true,否则为false

    public void SetTime(int newHour, int newMinute, boolean isAM)
{ 
   if (hour >=0 && hour < 12)
   {        isAM = true;
            hour = newHour;}

   if (minuteIsValid = true)
          minute = newMinute;

   if (isAM = true)
       System.out.println ( hour + "a.m");
   else
       nightHour = hour % 12;
       System.out.println( nightHour + "p.m");

}

到目前为止,这就是我制作的,类比法要求制作的是什么?我知道它的意思是相似的,但是对于C部分,它的意思是像SetHour和SETMINUTION这两个分开的东西吗


共 (2) 个答案

  1. # 1 楼答案

    这个问题仅仅意味着为所讨论的类编写两个构造函数(您没有提到它的名称),它们执行与第(c)部分和第(d)部分中描述的方法相同的功能;i、 e.他们用小时和分钟以及小时、分钟和“am”标志分别初始化课堂

    例如:

    • 方法:public void setTime(int hour, int minute)
    • 分析构造函数:public Time(int hour, int minute)

    注意,构造函数可以简单地链接到方法调用;e、 g

    public Time(int hour, int minute) {
      setTime(hour, minute);
    }
    

    然而,通常可以使用构造函数初始化最终字段,因此将而不是链接到setter;e、 g

    public Time(int hour, int minute) {
      this.hour = hour;
      this.minute = minute;
    }
    
  2. # 2 楼答案

    每个类可以有多个构造函数,每个构造函数可以得到不同的变量

    对于本作业,您应该添加获得与setters函数类似的值的构造函数,并使用setters:

        public ClassName(int newHour, int newMinute)
        {
            SeTime(newHour, newMinute);
        }