java - 如何使用 set 方法设置和检索数据

标签 java

我有 Date 类和 DateTest 类。我试图让用户输入日期,我必须使用 get/set 方法和构造函数正确格式化它。但是,当我尝试在输入后检索日期时,我只得到零。

我的代码:

public class Date
{

private int month;

private int day;

private int year;

    public Date(int m, int d, int y){
    month = m;
    day = d;
    year = y;

    }

        public void setMonth(int Month) {

        this.month = month;
    }

    public int getMonth(){

        return month;

    }


    public void setDay(int Day) {

        this.day = day;
    }

    public int getDay(){

        return day;

    }


        public void setYear(int Year) {

        this.year = year;
    }

    public int getYear(){

        return year;

    }

    public String displayDate(){

        return String.format("%d / %d / %d", month, day, year);
    }


}

还有 DateTest 类:

import java.util.Scanner;

public class DateTest

{

public static void main( String[] args)
{

    Scanner input = new Scanner(System.in);

    Date myDate = new Date(0, 0, 0);


    System.out.println("Please enter the month:");
    int month = input.nextInt();
    myDate.setMonth(month);
    System.out.println();

    System.out.println("Please enter the day:");
    int day = input.nextInt();
    myDate.setDay(day);
    System.out.println();

    System.out.println("Please enter the year:");
    int year = input.nextInt();
    myDate.setYear(year);
    System.out.println();



    System.out.printf("The date is %s%n", myDate.displayDate());



}
}

这是我的输出:

Please enter the month: 3

Please enter the day: 10

Please enter the year: 2016

The date is 0 / 0 / 0

它只显示为零。我确信这是一个简单的解决方案,但我无法理解。

最佳答案

public void setYear(int Year) {
   this.year = year;
}

Java 区分大小写。 Yearyear 不同。

您在这里所做的只是分配 this.year = this.year

将参数签名的名称改为int year(也符合通常以小写字母开头的命名规范)。

三个二传手都有同样的问题。

关于java - 如何使用 set 方法设置和检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35908163/

相关文章:

java - Android通过不同的进程非 Activity 类通知应用程序

java - JXMapKit 使用 getGpxTrack() 绘制路线

java - 当应用程序进入后台时,我应该在哪里启动一个应该触发的 Activity ?

java - 集成 JaCoCo、Arquillian 和 REST Assured 使我的代码覆盖率为 0%

java - 从方法名称创建查询不起作用。尝试过滤可分页

c# - 使用 JAVA 访问动态 AX 方法

java - Swing 对话框如何工作?

java - 如何解决定期通知不发送的问题

java - Android JUnit 测试应用类

java - java中如何在不终止程序的情况下告诉用户输入的XML字符串无效?