Введение в ООП. Классы и объекты

ООП - Объектно-ориентирование программирование - парадигма программирования, в которой основным концепциями являются понятия объектов.

Класс - прототип, с которого создается объект. Класс является основной для приложения, он содержит методы и переменные, которые являются его составляющими. ПОля определяют состояние, а методы - поведение будущего объекта.

Класс - модель объекта в реальной жизни. (кошка, машина, дом) Два экземпляра данного класса могут содержать разные данные, но они всегда имеют одни и те же методы. Существует только один класс автомобилей, но приложение может создать много разных объектов автомобилей (Спорт, Грузовик, Маршрутка)

Объявление класса включает в себя название поля, конструкторы и методы.

Конструктор - специальный блок инструкций, вызываемый при создании объекта

Объект  - это экземпляр класса . Создается через ключевое слово new Пример; Класс машина а его объекты спорт грузовик и т.д  Объект реализует поведение которое заложено в Классе

Инстанцирование - создание экземпляра класса. В отличии от слова создание, применяется не к объекту а к классу. То есть говорят создать экземпляр класса или инстанцировать класс

Инкапсуляция использование для скрытия знания или состояния объекта внутри класса, предотвращая прямой доступ несанкционированный сторон к этим значениям. Публично доступные методы, как правило, так же предоставляются в классе (так называемые методы получения\(get) и значения (set)) для доступа к значениям и другие подклассы могут вызывать эти методы для получения и изменения значения в пределах объекта

Метод доступа get - используется для получения значения из переменной (чтение)

Метод доступа set - используется для записи значения а переменную (запись)

Модификаторы доступа - определяют видимость членов класса.

private - класс, метод, поле и т.д которые объявлены как private могут быть доступны только в классе, где объявлены.

default - клаас, метод, поле, которые не имеют никакого модификатора доступа могут быть доступны только в рамках пакета, где класс был объявлен.

protected - класс метод поле и т.д которые объявлены как protected могут быть доступны только для классов - наследников и в рамках пакета, где класс объявлен.

public - класс метод поле которые объявлены как public могут быть доступны из любого другого класса

Полиморфизм - является способностью объекта принимать различные формы. Наиболее распространенное использование полиморфизма аа Ооп происходит, когда ссылка на суперкласс используется, чтобы обратиться к объекту сабкласса.

Наследование - механизм языка позволяющий описать новый класс на основе уже существующего родительского базового касса или интерфейса. Потомок может добавить собственные методы и свойства, а также пользоваться родительскими методами и свойствами

Superclass - родительский класс

Subclass - класс наследник

Память JVW делится на 3 части Stack Heap Permgen + выделяется память на работу самой JVM В Stak хранится примитивные типы данных и ссылки на объекты. В HEAP хранятся объекты. В PermGen хранятся метаданные, используемая самой JVM

new-  ключевое слово Java через которое создается новый оъект

null- это значение по умолчанию любых ссылочных типов, проще говоря, для всех обхектов

package;

package - это механизм группирования классов, которые связаны друг с другом по каким-то характеристикам. Если пакет не был создан руками. то Java создает пакет по умолчанию, но это плохая практика

такие пакеты можно рассматривать как часть инкапсуляции

Ключевое слово import - используется для импортирования нужного нам класса с другого пакета

Пакеты поддерживают иерархическую организацию, и используются для организации больших программ в логические еденицы

java.lang.System;

java.lang.String;

java.util.List;

java.util.Map;

java.awt.Button;

Корневой пакет java В нем содержится 3 subpackage lang util awt

Пакет Lang всегда импортируется по умолчанию

Если пакет содержит много классов и все они нам нужны для работу, то что бы не импортировать каждый по отдельности используется *

java.util.*

Возможно использовать класс из другого пакета без его импорта. Вы можете написать полное имя класса. Полное имя класса состоит из полного пути, включая пакет, содержащий класс

import static - позволяет использовать поля и методы, объявленные в классе как public  static без указания на данный класс.

 

 

 


Добавить комментарий