Top.Mail.Ru
Ответы

Объект и экземпляр класса.

Наверно я понял, просто хотел убедиться.

Person tom = Person();

В левой части Person-это тип, класс.

После Person идет ПЕРЕМЕННАЯ. Это не ОБЪЕКТ. Это переменная объектного типа? Прошу ответить если это переменная объектного типа.

В правой части Person это уже ОБЪЕКТ? Это экземпляр класса? Просто некоторые писали что объект это тоже самое что и экземпляр класса. Синонимы.

И как понять переменная экземпляра?

Спасибо за то, что отвечали на возможно "глупые" вопросы.

По дате
По рейтингу
Аватар пользователя
Мастер
5лет

смотри. если ты до сих пор не понял, объясню полностью...
ты создаешь переменную ССЫЛОЧНОГО типа Персон. потом с помощью знака = ты инициализируешь эту переменную, то есть говоришь ей на какую область памяти она ссылается (объект это область в памяти)... ключевое слово new выделяет память под объект конструктор которого ты вызываешь, и собственно в конце ты вызываешь конструктор Person();

Аватар пользователя
Мудрец
5лет

Person - класс (синоним слова тип).
tom - переменная типа Person. В переменной хранятся объекты (экземпляры) класса Person или его наследников. Не факт, что tom вообще содержит объект, она может быть и null

new Person() - создание экземпляра класса.

Аватар пользователя
Профи
5лет

Я джаву не знаю, но, думаю, с си они, в этом плане, похожи. Так вот в си, tom был бы объектом, который объявляется в классе person

Аватар пользователя
5лет

Что !??