Учебники

11) Класс и объекты

Классы и объекты являются фундаментальными компонентами ООП. Часто возникает путаница между классами и объектами. В этом уроке мы попытаемся рассказать вам разницу между классом и объектом.

Во-первых, давайте поймем, что они есть,

Синтаксис

class <class_name>{  
    field;  
    method;  
  }  

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

Синтаксис

ClassName ReferenceVariable = new ClassName();

В чем разница между объектом и классом?

Класс представляет собой чертеж или прототип , который определяет переменные и методы (функция) , общие для всех объектов определенного вида.

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

Нажмите здесь, если видео не доступно

Понимание концепции классов Java и объектов на примере.

Давайте рассмотрим пример разработки системы управления домашними животными, специально предназначенной для собак. Вам понадобится различная информация о собаках, таких как породы собак, возраст, размер и т. Д.

Вам нужно моделировать реальных существ, то есть собак, в программные объекты.

Объекты и классы в Java

Кроме того, вопрос на миллион долларов, как вы разрабатываете такое программное обеспечение? Вот решение

Во-первых, давайте сделаем упражнение.

Вы можете увидеть изображение трех разных пород собак ниже.

Объекты и классы в Java

Остановись здесь прямо сейчас! Перечислите различия между ними.

Некоторые из различий, которые вы, возможно, перечислили, могут быть по породе, возрасту, размеру, окрасу и т. Д. Если вы задумаетесь на минуту, эти различия также являются общими характеристиками этих собак. Эти характеристики (порода, возраст, размер, цвет) могут формировать элементы данных для вашего объекта.

Объекты и классы в Java

Затем перечислите обычное поведение этих собак, например, спать, сидеть, есть и т. Д. Так что это будут действия наших программных объектов.

Объекты и классы в Java

Пока мы определили следующие вещи,

  • Класс — Собаки
  • Элементы данных или объекты — размер, возраст, цвет, порода и т. Д.
  • Методы — есть, спать, сидеть и бегать.

Объекты и классы в Java

Теперь для разных значений элементов данных (размер породы, возраст и цвет) в классе 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-объект — это автономный компонент, который состоит из методов и свойств, которые делают определенный тип данных полезным
  • Система классов позволяет программе определять новый класс (производный класс) в терминах существующего класса (суперкласса), используя такие методы, как наследование, переопределение и расширение.