Noob здесь, с некоторыми вопросами об основных вещах в Java.При создании ссылочной переменной, что мы точно делаем?
Если у нас есть класс Person
с конструктором (также Person), мы можем создать ссылочную переменную как это:
Person johnny = new Person();
Допустим, мы только что создали в классе People
объекта, johnny
. Он содержит «адрес», где хранятся объект и его значения, в отличие от объектов типов примитивов (например, int x = 5; имеет значение 5, johnny
- «ссылка» на значение - если я понял вещи правильно)
первое слово:.Person
является класс/тип (< - отредактирован здесь), но:
- Что класс/тип делать? Что это значит? Возможно: что делает тип, если это не «примитивный тип»?
второе слово:johnny
является ссылочной переменной, типа Person. - Если я что-то не хватает, пожалуйста, просветите меня :)
3-е слово:new
это только говорится, что мы создаем новый объект.
четвёртое слово: второй Person
:
- Это объект, который мы создаем?
- Является ли это конструктором или классом, на который мы ссылаемся?
ТАКЖЕ:
- значение (адрес), что переменная имеет в виду все после знака равенства? Адрес
new Person
?
LASTLY: Полиморфизм. Так что, если у нас есть подкласс Adult
, который проходит супер-класса Person
, то мы можем сделать это:
Person amanda = new Adult();
- Что мы теперь делаем?
- Is
amanda
Тип класса Лицо и относится к объекту в классеAdult
?
Спасибо за вашу помощь :)
У вас может быть только ссылка на объект, поэтому тип ссылки является верхним пределом в иерархии класса, которым он может быть. –
прочитал достойный учебник по основным принципам OO –