Что ориентирован на объект?
Объект объекта, Oriended ... ориентированное программирование программирования
Объектно-ориентированные средства использования объектов для программирования, сокращенные как ООП.
Сравнение между SP и OOP
Три основных принципа объектно-ориентированной инкапсуляции и полиморфизма наследования
Объект
Объекты являются основной частью объектно-ориентированного программирования, они являются фактическими конкретными объектами с четко определенными состояниями и поведением;
Объекты на самом деле являются инкапсуляциями «данных» и «функций», в которых:
Данные представляют свой собственный статус, также известный как «атрибуты» или «данные члена»;
Функции представляют свои собственные функции, также известные как «методы» или «функции -члены».
добрый
Чтобы лучше понять мир, люди делят вещи (объекты) в реальной жизни на категории;
Вещи в одной и той же категории всегда имеют общие черты;
Классы определяют сущности с общими характеристиками и поведением;
Класс - это коллекция группы объектов с теми же свойствами и поведением.
свойство
Характеристики вещей представлены переменными в классе;
Каждое свойство каждого объекта имеет свое конкретное значение;
Имя атрибута разделяется всеми объектами класса;
Особенности, принадлежащие объектам или объектам, называются атрибутами, когда представлены в классе
метод
Поведение и действия вещей представлены функциями в классе;
Каждый объект имеет одинаковые действия и поведение;
Действия, выполняемые объектом, представлены как методы в классе.
Разница между классом и объектом
Классы представляют собой «шаблоны» или «прототипы», используемые для описания сущностей;
Объекты являются фактическими объектами, и каждый объект является конкретным экземпляром класса;
Классы используются для определения всех свойств и методов объекта, и все объекты одного класса имеют одинаковые характеристики и операции;
Занятия можно понимать как формы, которые производят продукты, а объект - это продукты, производимые на основе этой формы.
Классы и структуры
Упаковка
Упаковать что -то вместе и представить его в новой и полной форме;
Способ обработки скрытых атрибутов, методов или деталей реализации называется инкапсуляцией;
Инкапсуляция фактически выборочно разоблачает или скрывает определенную информацию, которая решает проблемы безопасности данных.
наследовать
Наследование - это особенность повторного использования существующих классов для создания новых классов;
С точки зрения непрофессионала, это процесс создания нового класса (подкласса или полученного класса) из существующего класса (то есть родительского класса или базового класса);
В реальной жизни наследство может достичь цели повторного использования собственности, в то время как в Java наследование может сделать повторное использование кода.
Полиморфный
Полиморфизм относится к различным реализациям одной и той же функции в разных классах;
Преимущество полиморфизма заключается в том, что он делает классы более гибкими и легкими в расширении.
Есть также «абстрактный», о котором я должен здесь поговорить
абстрактный
Процесс классификации тех же или похожих объектов в одну и ту же категорию является абстракцией, поэтому абстракция является методом анализа задач;
Основные принципы абстракции:
Заботиться только о основных проблемах, а не о второстепенных проблемах;
Заботиться только о главном противоречии, а не о вторичном противоречии;
Просто заботитесь об одних и тех же вещах, а не о разных вещах;
Просто заботитесь о том, в чем проблема и что может быть достигнуто, но не о том, как ее достичь.
Абстрактный процесс на самом деле является основной идеей объектно-ориентированного программирования.
Определение занятий в Java
Создать объект на Java
Синтаксис для создания объекта
Подобно массивам, объекты также относятся к типам данных и могут выделять память только из кучи, используя новый оператор;
Общий синтаксис для создания объектов:
Имя класса Ссылка Имя = New Class name ();
Используя уже определенные классы, процесс создания объектов в этом классе называется «экземпляр».
Оператор участника "."
Только путем создания объекта класса сначала могут быть доступа к членам (свойствам и методам) в классе;
Используйте операторы участников (.) Для доступа к свойствам членов или методам участников;
Общий синтаксис:
Имя объекта. Имя участника, такое как:
Std.age = 18; // назначить значение атрибуту члена std.dining (); // Вызов метод участника
Доступ к разрешениям: государственные и частные
Члены структур на языке C могут быть доступны из любого места, что оставит большие скрытые опасности для безопасности данных;
Чтобы избежать коррупции данных, вызванной непосредственным доступом к классу участников из -за пределов класса, Java устанавливает ограничения на доступ к членам класса;
Ключевыми словами и частными являются модификаторы доступа, чтобы указать, можно ли получить доступ к участнику извне класса;
Члены общественных изменений могут быть доступны в любом месте без каких -либо ограничений;
Участники, модифицированные частным, могут быть доступны только другими участниками в этом классе и не могут быть доступны извне класса.
Не в состоянии получить доступ к частным членам извне класса;
Частные члены других классов также скрыты из текущего класса.
Пример разрешения доступа
Класс Студент {Private String name; // имя, частное, частное, частное, частное, частное, частное, частное, частное, частное, частное, частное, непосредственно доступ из -за пределов класса; // Weight, private, directly access from outside the class// Method of eating, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, public, //The walk Метод является внутренним членом класса, и вы можете напрямую получить доступ к частным членам этого класса}} Общедоступный тест класса {public static void main (string [] args) {Student std = new Student (); // создание студенческого объекта Std.age = 18; // Попытка получить доступ к частным членам извне класса, будет сообщена ошибка std.dining (); // Принять доступ к публичным членам}}
Доступ к разрешениям (продолжение)
Добавление модификаторов доступа может иногда вызывать неудобства для эксплуатации данных, но может обеспечить безопасность данных в значительной степени;
Как правило, мы объявляем атрибуты участника как частные и участники как публичные, но это не является абсолютным;
Иногда некоторые частные члены данных, возможно, потребуются эксплуатировать за пределами класса, поэтому можно добавить публичный метод, и этот метод может использоваться для использования частных данных, чтобы избежать коррупции данных, вызванного неправильным операцией за пределами класса;
Поскольку основной метод должен быть вызван виртуальной машиной вне класса, основной метод должен быть объявлен публичным.
Например: изменить класс ученика
Класс Студент {// Определить класс студенческого класса частной строки; // имя, частный частный возраст; // возраст, частный вес -поплавок; // Вес, частная публичная void setName (string name) {// Метод назначения значений, public this.name = name; } public void setage (int a) {// Метод назначения значений возрасту, общественный возраст = a; } public void легкий вес (float w) {// Метод назначения значений весам, общественный вес = w; } public void Display () {// Метод для распечатки всей информации является общедоступной System.out.println ("name:" + name + ", age:" + age + ", вес:" + вес); } public void dining () {...} // метод для еды, публичный, код слегка публичный void walk () {...} // метод для ходьбы, публичный, слегка код} public class test {public static void main (string [] args) {Student std = new Student (); // создание объекта ученика класса Std.SetName ("Zhang San"); // назначить имя STD.Setage (18); // назначить std.sheseweuess (55); // назначить std.dining () на вес; // вызовут метод еды std.display (); // распечатать информацию}} Инициализация объекта
В приведенном выше примере вы можете присвоить значения только членам данных один за другим. Если вы хотите инициализировать атрибуты участника при создании объекта, вы используете метод строительства;
Конструктор - это метод специального элемента, который имеет то же имя, что и класс и автоматически называется виртуальной машиной, когда объект создается;
Обратите внимание: конструктор не имеет типа возвращаемого значения и не может иметь возвращаемого значения.
Пример метода строительства:
/ *Определите класс constructordemo и проверьте метод конструктора */ class constructordemo {/ *constructor, имя метода точно такое же, как и имя класса, нет необходимости указывать тип возвращаемого значения, а также не может быть возвращаемого значения */ public constructordemo () {System.out.println («Это конструктив»); }} /*Тестовый класс, используемый для размещения основного метода, обычно объявляет класс, содержащий основной метод как общедоступный* / Общедоступный тест класса { /*Основной метод, запись программы* / public static void main (string [] args) { /*создание объекта Constructordemo class* / constructordemo cd = new constructordemo (); }} // он выведет "Это метод конструктора" Строительный метод
Это именно потому, что метод конструктора автоматически вызывается при создании объекта, поэтому метод конструктора обычно используется для распределения ресурсов на элементы данных или инициализацию элементов данных;
Общая форма строительства метода:
Имя класса разрешения доступа (список параметров) {
Метод корпус
}
Поскольку конструктор называется виртуальной машиной, конструктор, как правило, должен определяться как публичный.
Например: добавьте конструктор в класс ученика
Класс Студент {// Определить класс студенческого класса частной строки; // имя, частный частный возраст; // возраст, частный вес -поплавок; // Вес, частный // метод строительства, присваивайте значения членам данных в соответствии с проведенными параметрами общественного студента (строка n, int a, float w) {// назначать начальные значения каждому имени члена данных = n; возраст = a; вес = w; } public void SetName (String n) {...} // Присвоение значений на имя, публичное, слегка общедоступное void -настройку (int a) {...} // Присвоение значений возрасту, публично, слегка общедоступный с легким весом (float w) {…} // методы присвоения веса, общедоступной, слегка общедоступной void -дисплея () {…} // методы печатать все, что общедоступное, общедоступное, общедоступное общение () {…} // // методы печатать все, что общедоступно, общедоступный, общедоступный,). Eat, public, код слегка общедоступный void walk () {…} // Методы для ходьбы, публичный, код слегка публичный void walk () {…} // Методы для ходьбы, публичный, слегка общедоступный тест класса {public static void main (string [] args) {// Использовать метод строительства, чтобы указать начальное значение для членов данных Студента STD = новый студент ("Zhang San", 18, 55); std.display (); // распечатать информацию}}
Метод построения (продолжение)
Каждый объект должен выполнять конструктор при генерировании и может быть выполнен только один раз;
Если вызов метода конструктора не удастся, объект не может быть создан;
Конструктор не может быть назван непосредственно явно;
Без определенного конструктора класс автоматически генерирует конструктор по умолчанию без параметров, который ничего не делает;
После того, как конструктор явно определен, конструктор по умолчанию исчезает автоматически. Поэтому обычно определены два метода строительства: нет параметров и нет параметров.
Суммировать