Объект с аргументами по-прежнему отображает начальные значения ссылочных переменных - PullRequest
0 голосов
/ 10 октября 2018
public class Date {

    private int day;
    private int month;
    private int year;

    public Date(int theDay, int theMonth, int theYear) {
    }

    public void setDay(int theDay) {
        day = theDay;
    }

    public int getDay() {
        return day;
    }

    public void setMonth(int theMonth) {
        month = theMonth;
    }

    public int getMonth() {
        return month;
    }

    public void setYear(int theYear) {
        year = theYear;
    }

    public int getYear() {
        return year;
    }

    public void displayDate() {
        System.out.printf("The current date is: %d/%d/%d", getDay(), getMonth(), getYear() );
    }
}

+

public class DateTest {

    public static void main( String[] args ) {

        Date myDate = new Date(20, 5, 2010);

        myDate.displayDate();
    }
}

Результат : Текущая дата: 0/0/0 Ожидаемый результат: 20/5/2010

Я проверилмного раз, и я не вижу никакой ошибки.Убедился, что изменения были записаны и перезапущен Eclipse.Как вы думаете ?Это мой первый пост здесь, к сожалению, извините, если это неправильная форма публикации здесь.Спасибо!

Ответы [ 3 ]

0 голосов
/ 10 октября 2018

Ваш конструктор должен быть:

public Date(int theDay, int theMonth, int theYear) {

    this.day = theDay;
    this.month = theMonth;
    this.year = theYear;
}

В основном вам нужно присвоить значение, которое вы передаете переменным экземпляра.

0 голосов
/ 10 октября 2018

Ваш конструктор ничего не делает с вашими полями, поэтому

public Date(int theDay, int theMonth, int theYear) {
}

инициализирует ваши файлы при создании объекта:

 public Date(int theDay, int theMonth, int theYear) {
     day=theDay;
     month=theMonth;
     year=theYear;
 }
0 голосов
/ 10 октября 2018

В конструкторе вы принимаете аргументы 'theDay', 'theMonth', 'theYear'.установите их равными переменным класса «день», «месяц», «год».

day=theDay
month=theMonth
year=theYear

внутри конструктора

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...