MyDate.java имеет методМетод setValue (Integer) не определен для типа Integer?
class MyDate {
public void setValue(Integer value) {
value = 55;
}
}
PassTest.java
import learn.MyDate;
public class PassTest {
public static void changeInt(Integer value) {
setValue(value);
}
показывает ошибку Метод setValue(Integer)
не определен для типа Integer
? Зачем?
И какая разница, если мы позвоним setValue
как value.setValue
здесь? Я пытался найти его в Google, но не мог понять его?
Вы должны называть 'setValue()' объектом 'MyDate'. –
Ваш метод определен в неправильном классе. Возможно, вы захотите использовать 'int', а не' Integer', чтобы предотвратить странную проблему об Autoboxing. Если у вас нет особо конкретной ситуации, перейдите к типам значений. –
Sidenote: установка параметра метода в методе 'setValue' не влияет на уровень класса. Java работает над копией! – Fildor