Чтобы понять создание объекта, мы должны сначала знать понятие ООП. Это модель программирования, основанная на четырех основных принципах объектно-ориентированного подхода, а именно: Абстракция, Инкапсуляция, Наследование и Полиморфизм. Позже мы обсудим эти четыре столпа в нашем следующем блоге, но сначала нам нужно понять термин объект.
Объект — это не что иное, как экземпляр класса. У него есть состояние, поведение и идентичность. Состояние и поведение объекта могут быть определены в классе.
class Medium{ String articles; // state 1 int pageNumber; //state 2 public void writeArticle(){ // Behaviour 1 // some code .... } public void publishArticle(){ // Behaviour 2 // some code ..... } }
«State» также известен как элемент данных, поля или свойства класса, тогда как «Behaviour» — это метод или функция-член класса.
Короче говоря, мы можем сказать, что Класс = Состояние + Поведение. Это расширенная концепция структуры, которую мы читали в нашей книге «Процедурно-ориентированное программирование», например C, C++ и т. д. По приведенному выше определению мы можем легко сказать, что класс — это план состояния и поведения объекта.
Это так много о классе, но чтобы понять создание объекта, нужно понять концепцию класса. Теперь подойдем к моменту, когда мы собираемся понять концепцию создания объекта, но прежде чем перейти к этому, мы должны знать, что означает объект.
Объект — это физическое представление класса, который является сущностью времени выполнения, поскольку он выделяет память в куче при выполнении класса. Чтобы создать объект класса, мы должны знать его синтаксис.
Синтаксис: ‹ClassName› ‹referenceVariable› = new ‹ClassName› ();
Medium med = new Medium();
Если вы понимаете до сих пор, то это означает, что мы идем по правильному пути, потому что теперь пришло время для кульминации ……
Итак, когда я создаю объект класса, т.е.
Medium med = new Medium();
JVM выделяет 8 байт памяти для ссылочной переменной и инициализирует ее значением null.
Проверяет, загружен ли класс или нет. Если в случае, если класс не загружен, то сначала он будет загружаться, при загрузке он выделяет память для статической переменной, которой нет в нашем классе, но если она была там, то она инициализирует эту переменную со значением по умолчанию, т.е. для int -> 0, String -> null и float -> 0.0
После этого он создаст объект и выделит память для переменной экземпляра класса и инициализирует ее значениями по умолчанию.
Теперь адрес объекта присваивается ссылочной переменной.
Я надеюсь, что вы поняли эту статью и у вас есть четкое представление о создании объектов с помощью диаграмм. Если вам нравится мой контент, хлопайте и подписывайтесь. Спасибо !