Классы и объекты являются фундаментальными компонентами ООП. Часто возникает путаница между классами и объектами. В этом уроке мы попытаемся рассказать вам разницу между классом и объектом.
Во-первых, давайте поймем, что они есть,
- Что такое класс в Java?
- Что такое объект в Java?
- В чем разница между объектом и классом?
- Концепция классов и объектов
- Пример кода: класс и объект
- Пример объекта и класса: главный внешний класс
Что такое класс в Java?
КЛАСС — это план или набор инструкций для создания объекта определенного типа. Это базовая концепция объектно-ориентированного программирования, которая вращается вокруг реальных объектов. Класс в Java определяет, как будет вести себя объект и что он будет содержать.
Синтаксис
class <class_name>{ field; method; }
Что такое объект в Java?
OBJECT — это экземпляр класса. Объект — это не что иное, как автономный компонент, который состоит из методов и свойств, делающих данные определенного типа полезными. Например имя цвета, стол, сумка, лай. Когда вы отправляете сообщение объекту, вы просите объект вызвать или выполнить один из его методов, как определено в классе.
С точки зрения программирования, объект может включать в себя структуру данных, переменную или функцию. Он имеет выделенную область памяти. Объект выполнен в виде иерархии классов.
Синтаксис
ClassName ReferenceVariable = new ClassName();
В чем разница между объектом и классом?
Класс представляет собой чертеж или прототип , который определяет переменные и методы (функция) , общие для всех объектов определенного вида.
Объект является экземпляром класса. Программные объекты часто используются для моделирования реальных объектов, встречающихся в повседневной жизни.
Нажмите здесь, если видео не доступно
Понимание концепции классов Java и объектов на примере.
Давайте рассмотрим пример разработки системы управления домашними животными, специально предназначенной для собак. Вам понадобится различная информация о собаках, таких как породы собак, возраст, размер и т. Д.
Вам нужно моделировать реальных существ, то есть собак, в программные объекты.
Кроме того, вопрос на миллион долларов, как вы разрабатываете такое программное обеспечение? Вот решение
Во-первых, давайте сделаем упражнение.
Вы можете увидеть изображение трех разных пород собак ниже.
Остановись здесь прямо сейчас! Перечислите различия между ними.
Некоторые из различий, которые вы, возможно, перечислили, могут быть по породе, возрасту, размеру, окрасу и т. Д. Если вы задумаетесь на минуту, эти различия также являются общими характеристиками этих собак. Эти характеристики (порода, возраст, размер, цвет) могут формировать элементы данных для вашего объекта.
Затем перечислите обычное поведение этих собак, например, спать, сидеть, есть и т. Д. Так что это будут действия наших программных объектов.
Пока мы определили следующие вещи,
- Класс — Собаки
- Элементы данных или объекты — размер, возраст, цвет, порода и т. Д.
- Методы — есть, спать, сидеть и бегать.
Теперь для разных значений элементов данных (размер породы, возраст и цвет) в классе Java вы получите разные объекты собак.
Вы можете разработать любую программу, используя этот подход ООП.
При создании класса нужно руководствоваться следующими принципами.
- Принцип единой ответственности (SRP) — класс должен иметь только одну причину для изменения
- Открытая закрытая ответственность (OCP) — она должна иметь возможность расширять любые классы, не изменяя ее
- Ответственность за замену Лискова (LSR) — Производные классы должны быть заменяемыми для своих базовых классов.
- Принцип инверсии зависимости (DIP) — зависит от абстракции, а не от конкреций
- Принцип сегрегации интерфейса (ISP) — подготовьте детализированные интерфейсы, которые зависят от клиента.
Пример кода: класс и объект
// Class Declaration public class Dog { // Instance Variables String breed; String size; int age; String color; // method 1 public String getInfo() { return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color); } public static void main(String[] args) { Dog maltese = new Dog(); maltese.breed="Maltese"; maltese.size="Small"; maltese.age=2; maltese.color="white"; System.out.println(maltese.getInfo()); } }
Вывод:
Breed is: Maltese Size is:Small Age is:2 color is: white
Пример объекта и класса: главный внешний класс
В предыдущей программе мы создавали метод main () внутри класса. Теперь мы создаем классы и определяем метод main () в другом классе. Это лучший способ, чем предыдущий.
// Class Declaration class Dog { // Instance Variables String breed; String size; int age; String color; // method 1 public String getInfo() { return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color); } } public class Execute{ public static void main(String[] args) { Dog maltese = new Dog(); maltese.breed="Maltese"; maltese.size="Small"; maltese.age=2; maltese.color="white"; System.out.println(maltese.getInfo()); } }
Вывод:
Breed is: Maltese Size is:Small Age is:2 color is: white
Резюме:
- Класс Java — это объект, который определяет, как будет вести себя объект и что он будет содержать.
- Java-объект — это автономный компонент, который состоит из методов и свойств, которые делают определенный тип данных полезным
- Система классов позволяет программе определять новый класс (производный класс) в терминах существующего класса (суперкласса), используя такие методы, как наследование, переопределение и расширение.