Классы, объекты и пакеты в Java

Размер: px
Начинать показ со страницы:

Download "Классы, объекты и пакеты в Java"

Транскрипт

1 Классы, объекты и пакеты в Java Алексей Владыкин 3 октября 2012 Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

2 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

3 Основы ООП 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

4 Основы ООП Определение ООП Объектно-ориентированное программирование парадигма программирования, в которой программа строится из взаимодействующих объектов Объект это мыслимая или реальная сущность, обладающая характерным поведением и отличительными характеристиками и являющаяся важной в предметной области // Гради Буч Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

5 Основы ООП Альтернативы ООП Структурное программирование Функциональное программирование Логическое программирование Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

6 Основы ООП Свойства объекта Объект является экземпляром класса Объект имеет внутреннее состояние Объект может принимать сообщения (в большинстве языков сообщение = вызов метода) Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

7 Основы ООП Возможности ООП Инкапсуляция Сокрытие деталей реализации за набором допустимых сообщений Наследование Создание производных классов, наследующих свойства базового Полиморфизм Разная обработка сообщений в разных классах Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

8 Основы ООП ООП в Java Поддержка ООП заложена в Java изначально (инкапсуляция, наследование, полиморфизм) В Java все является объектом, кроме примитивных типов Исполняемый код может находиться только в классе Стандартная библиотека предоставляет огромное количество классов, но можно свободно создавать свои Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

9 Объявление класса 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

10 Объявление класса /* modifiers */ class Example { } /* class content : fields and methods */ Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

11 Объявление класса Поля class Example { } /* modifiers */ int number ; /* modifiers */ String text = " hello "; Поля инициализируются значениями по умолчанию Модификатор final значение должно быть присвоено ровно один раз к моменту завершения инициализации экземпляра Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

12 Объявление класса Методы class Example { } int number ; /* modifiers */ int getnumber () { return number ; } Возможна перегрузка методов (несколько одноименных методов с разными параметрами) Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

13 Объявление класса Конструкторы class Example { } int number ; /* modifiers */ Example ( int number ) { this. number = number ; } Если не объявлен ни один конструктор, автоматически создается конструктор по умолчанию (без параметров) Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

14 Объявление класса Деструктор В Java нет деструкторов, сбор мусора автоматический Есть метод void finalize(), но пользоваться им не рекомендуется При необходимости освободить ресурсы заводят обычный метод void close() или void dispose() Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

15 Объявление класса Статические поля и методы class Example { } /* modifiers */ static final int DEFAULT_NUMBER = 333; /* modifiers */ static int getdefaultnumber () { return DEFAULT_NUMBER ; } Статические поля и методы относятся не к экземпляру класса, а ко всему классу Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

16 Использование класса 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

17 Использование класса Класс Example можно использовать как Параметр метода Возвращаемое значение метода Локальная переменная Поле класса (того же или любого другого) Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

18 Использование класса Создание экземпляра Example e = null ; // e. getnumber () -> NullPointerException e = new Example (3); // e. getnumber () -> 3 e. number = 10; // e. getnumber () -> 10 Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

19 Использование класса Доступ к статическим членам int defaultnumber = Example. DEFAULT_NUMBER ; // defaultnumber -> 333 defaultnumber = Example. getdefaultnumber (); // defaultnumber -> 333 Example e = new Example (3); // possible, but discouraged defaultnumber = e. getdefaultnumber (); // defaultnumber -> 333 Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

20 Наследование 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

21 Наследование Объявление класса-наследника class Derived extends Example { } /* derived class content */ Java не поддерживает множественное наследование, но есть интерфейсы Все классы наследуют java.lang.object Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

22 Наследование Конструктор класса-наследника class Derived extends Example { } Derived () { this (10); } Derived ( int number ) { super ( number ); } Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

23 Наследование Переопределение методов class Derived extends Example { int getnumber () { int number = super. getnumber (); return Math. max (10, number ); } Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

24 Наследование Полиморфизм в действии Example e = new Example (3); // e. getnumber () -> 3 e = new Derived (3); // e. getnumber () -> 10 Derived d = ( Derived ) e; // d. getnumber () -> 10 Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

25 Наследование Оператор instanceof Позволяет проверить тип объекта в момент исполнения программы Example e = new Example (3); // e instanceof Object -> true // e instanceof Example -> true // e instanceof Derived -> false e = new Derived (3); // e instanceof Object -> true // e instanceof Example -> true // e instanceof Derived -> true Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

26 Наследование Интерфейсы Интерфейс определяет возможные сообщения, но не их реализацию interface ExampleInterface { int getnumber (); } Класс может реализовывать несколько интерфейсов class Example implements ExampleInterface { int getnumber () { // implementation } } Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

27 Наследование Модификатор final final class Example {...} нельзя создать класс-наследник final int getnumber() {...} нельзя переопределить метод в дочернем классе Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

28 Наследование Модификатор abstract abstract class Example {...} нельзя создать экземпляр класса abstract int getnumber(); метод без реализации (класс должен быть абстрактным) Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

29 Наследование java.lang.object String tostring() Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

30 Наследование java.lang.object String tostring() boolean equals(object obj) Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

31 Наследование java.lang.object String tostring() boolean equals(object obj) int hashcode() Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

32 Наследование java.lang.object String tostring() boolean equals(object obj) int hashcode() Class getclass() Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

33 Наследование java.lang.object String tostring() boolean equals(object obj) int hashcode() Class getclass() void wait() три варианта void notify() void notifyall() Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

34 Наследование java.lang.object String tostring() boolean equals(object obj) int hashcode() Class getclass() void wait() три варианта void notify() void notifyall() void finalize() void clone() Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

35 Наследование Пример иерархии классов из JDK java.lang.object java.lang.number java.lang.integer java.lang.double java.lang.boolean java.lang.character java.lang.string java.lang.abstractstringbuilder java.lang.stringbuilder java.lang.stringbuffer Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

36 Пакеты 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

37 Пакеты Зачем нужны пакеты Задание пространства имен, предотвращение коллизий имен классов Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

38 Пакеты Зачем нужны пакеты Задание пространства имен, предотвращение коллизий имен классов Логическая группировка связанных классов Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

39 Пакеты Зачем нужны пакеты Задание пространства имен, предотвращение коллизий имен классов Логическая группировка связанных классов Сокрытие деталей реализации за счет модификаторов доступа Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

40 Пакеты Как работают пакеты Задание пакета для класса: package ru.compscicenter.java2012; Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

41 Пакеты Как работают пакеты Задание пакета для класса: package ru.compscicenter.java2012; Использование класса из пакета: классы текущего пакета и пакета java.lang всегда видны классы других пакетов доступны по полному имени с пакетом можно использовать директиву import Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

42 Пакеты Как работают пакеты Задание пакета для класса: package ru.compscicenter.java2012; Использование класса из пакета: классы текущего пакета и пакета java.lang всегда видны классы других пакетов доступны по полному имени с пакетом можно использовать директиву import Класс, принадлежащий пакету, должен лежать в одноименной директории: ru/compscicenter/java2012/ Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

43 Пакеты Импорт Импорт одного класса: import ru.compscicenter.java2012.exampleclass; Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

44 Пакеты Импорт Импорт одного класса: import ru.compscicenter.java2012.exampleclass; Импорт всех классов пакета: import ru.compscicenter.java2012.*; Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

45 Пакеты Импорт Импорт одного класса: import ru.compscicenter.java2012.exampleclass; Импорт всех классов пакета: import ru.compscicenter.java2012.*; Импорт статических полей и методов: import static java.lang.system.out; import static java.util.arrays.*; Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

46 Пакеты Как работает импорт Директивы import позволяют компилятору получить полные имена всех используемых классов, полей и методов по их коротким именам Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

47 Пакеты Как работает импорт Директивы import позволяют компилятору получить полные имена всех используемых классов, полей и методов по их коротким именам В class-файл попадают полные имена, подстановка содержимого не происходит Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

48 Пакеты Как работает импорт Директивы import позволяют компилятору получить полные имена всех используемых классов, полей и методов по их коротким именам В class-файл попадают полные имена, подстановка содержимого не происходит При запуске программы все используемые классы должны присутствовать в classpath Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

49 Модификаторы доступа 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

50 Модификаторы доступа public доступ для всех protected доступ в пределах пакета и дочерних классов private доступ в пределах класса по умолчанию (нет ключевого слова) доступ в пределах пакета Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

51 Вложенные классы 1 Основы ООП 2 Объявление класса 3 Использование класса 4 Наследование 5 Пакеты 6 Модификаторы доступа 7 Вложенные классы Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

52 Вложенные классы Можно объявить несколько классов в одном файле.java Только один класс может быть public, остальные должны быть с пакетным доступом Эффект ничем не отличается от создания отдельного java-файла для каждого класса Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

53 Вложенные классы Можно объявить класс внутри другого класса Такие классы имеют доступ к private-членам друг друга Экземпляр вложенного класса связан с экземпляром внешнего класса Если связь не нужна, вложенный класс объявляют с модификатором static Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

54 Вложенные классы class Example { private int number ; int getnumber () { return new Inner (). getnumber (); } } class Inner { int getnumber () { return number ; } } Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

55 Что сегодня узнали Что такое ООП Как в Java объявить класс, создать его экземпляры и работать с ними Как в Java реализуется инкапсуляция, наследование и полиморфизм Что такое пакеты и как с ними работать Алексей Владыкин Классы, объекты и пакеты в Java 3 октября / 42

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

Объекты, классы и пакеты в Java Объекты, классы и пакеты в Java Алексей Владыкин 22 сентября 2014 Алексей Владыкин Объекты, классы и пакеты в Java 22 сентября 2014 1 / 37 1 Основы ООП 2 Пакеты 3 Классы 4 Наследование Алексей Владыкин

Подробнее

Приблизительные вопросы к зачёту (1 семестр) по дисциплине «СЕТЕВЫЕ ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ»

Приблизительные вопросы к зачёту (1 семестр) по дисциплине «СЕТЕВЫЕ ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ» Приблизительные вопросы к зачёту (1 семестр) по дисциплине «СЕТЕВЫЕ ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ» Тема 1. Введение в технологию Java Java как платформа, история создания. Среда разработки. Этапы создания

Подробнее

Концепции языков программирования

Концепции языков программирования Объектно-ориентированные языки программирования Темы 1 История 2 3 4 5 История Абстракция данных: SIMULA 67 (1962 1967) Спроектирован в Норвегии Нигардом и Далем, главным образом, для моделирования сложных

Подробнее

Абстрактные классы и методы

Абстрактные классы и методы Абстрактные классы и методы Абстрактные методы Абстрактные классы Расширение абстрактных классов Интерфейсы «Множественное наследование» в Java Вложенные интерфейсы Абстрактные классы и методы В ряде ситуаций

Подробнее

Современные технологии программирования (часть 2)

Современные технологии программирования (часть 2) Гуляев Г.М. Современные технологии программирования (часть 2) Лекция 4. ООП на языке Scala Курс лекций для студентов АлтГТУ LOGO Классы В отличие от java декларация public не используется. Все классы в

Подробнее

Программирование на языке Java

Программирование на языке Java Теория и технология программирования Программирование на языке Java Лекция 3. Проектирование классов в Java Глухих Михаил Игоревич, к.т.н., доц. mailto: glukhikh@mail.ru Общий базовый класс В языке Java

Подробнее

Дополнительная образовательная программа по курсу «Программирование на языке Java»

Дополнительная образовательная программа по курсу «Программирование на языке Java» МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное автономное образовательное учреждение высшего образования «Новосибирский национальный исследовательский государственный

Подробнее

Теоретические вопросы

Теоретические вопросы МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД «ЗАПОРІЗЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ» Спеціальність 6.040301 Прикладна математика Дисципліна «Програмування» Модульна контрольна робота

Подробнее

Введение в объектно-ориентированное программирование.

Введение в объектно-ориентированное программирование. Лабораторная работа 12 Введение в объектно-ориентированное программирование. Цель работы. Изучение основ объектно-ориентированного программирования на языке Java. Содержание работы. В работе рассматриваются

Подробнее

Web-технологии. ООП в PHP. Кулаков Кирилл Александрович. ПетрГУ,

Web-технологии. ООП в PHP. Кулаков Кирилл Александрович. ПетрГУ, Web-технологии ООП в PHP Кулаков Кирилл Александрович ПетрГУ, 2017 1 Определение базового класса Синтаксис class MyClass { // свойство класса public $var = 'значение'; // метод класса public function displayvar()

Подробнее

Основы объектноориентированного. программирования (ООП)

Основы объектноориентированного. программирования (ООП) Основы объектноориентированного программирования (ООП) Объект и класс Основными элементами программы являются не переменные и методы (процедуры), а объекты. Объекты это программные конструкции, включающие

Подробнее

1. Аннотация. 2. Цели освоения дисциплины

1. Аннотация. 2. Цели освоения дисциплины 1. Аннотация Курс направлен на формирование и развитие у студентов практических навыков программирования на Java и приобретение ими необходимого опыта для реализации проектов, связанных с вычислениями

Подробнее

Вступительное слово и обзор Java технологии

Вступительное слово и обзор Java технологии Вступительное слово и обзор Java технологии Евгений Беркунский, НУК eugeny.berkunsky@gmail.com http://www.berkut.mk.ua Что такое Java? Язык программирования Платформа: Аппаратная Операционная: Windows,

Подробнее

Паттерны проектирования

Паттерны проектирования Паттерны проектирования Введение Что такое «хороший дизайн» Точного универсального ответа на этот вопрос нет Есть стандартные решения для определенных задач паттерны Предложены хорошими специалистами Проверены

Подробнее

Типы данных и управляющие структуры Java

Типы данных и управляющие структуры Java Типы данных и управляющие структуры Java Евгений Беркунский, НУК eugeny.berkunsky@gmail.com http://berkut.homelinux.com Что такое тип данных? Тип данных: Спектр значений Набор допустимых операций Программа

Подробнее

Ключевые слова языка С#

Ключевые слова языка С# 1 abstract, см. также 11, 55 2 as, см. также 37 Ключевые слова языка С# Модификатор abstract используется при объявлении класса, метода или свойства. Использование модификатора abstract в объявлении класса

Подробнее

ООП основано на трех принципах: полиморфизм, наследование и инкапсуляция. Инкапсуляцию разобрали в прошлой лекции. Рассмотрим наследование.

ООП основано на трех принципах: полиморфизм, наследование и инкапсуляция. Инкапсуляцию разобрали в прошлой лекции. Рассмотрим наследование. Наследование. ООП основано на трех принципах: полиморфизм, наследование и инкапсуляция. Инкапсуляцию разобрали в прошлой лекции. Рассмотрим наследование. В С++ иерархия объектов реализована в концепции

Подробнее

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

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

Подробнее

Семинар 5. Статические элементы данных и функции. Наследование. Виртуальные методы.

Семинар 5. Статические элементы данных и функции. Наследование. Виртуальные методы. Семинар 5. Статические элементы данных и функции. Наследование. Виртуальные методы. 1. Статическая (static) переменная класса Добавим в определение класса статическую переменную: private: // double x;

Подробнее

Простейшая программа Hello, world!

Простейшая программа Hello, world! Простейшая программа Hello, world! // System.out.println("Привет, мир!"); Обязательные требования: 1) Имя файла, содержащего код программы, должно совпадать с именем класса 2) Файл должен иметь расширение.java

Подробнее

«Наследование, перегрузка операторов, обработка исключений»

«Наследование, перегрузка операторов, обработка исключений» Лабораторная работа по теме «Наследование, перегрузка операторов, обработка исключений» 1) Исследуйте исходный код программы: 1.1 объясните, что такое интерфейс, что он может содержать и чем он отличается

Подробнее

Лекция 8. Объектно-ориентированное программирование.

Лекция 8. Объектно-ориентированное программирование. http://compscicenter.ru 1/17 Лекция 8. Объектно-ориентированное программирование. Александр Смаль CS центр 5 ноября 2014 Санкт-Петербург http://compscicenter.ru 2/17 Ещё раз об ООП Объектно-ориентированное

Подробнее

Программирование на JAVA

Программирование на JAVA Программирование на JAVA Владимир Юрьевич Романов, Московский Государственный Университет им. М.В.Ломоносова Факультет Вычислительной Математики и Кибернетики vromanov@cs.msu.su, vladimir.romanov@gmail.com

Подробнее

Web-разработка на PHP-технологиях Курс лекций и семинаров для студентов, желающих научиться основам Web-разработки на PHP. Осень-Зима 2014.

Web-разработка на PHP-технологиях Курс лекций и семинаров для студентов, желающих научиться основам Web-разработки на PHP. Осень-Зима 2014. Web-разработка на PHP-технологиях Курс лекций и семинаров для студентов, желающих научиться основам Web-разработки на PHP Осень-Зима 2014 Лекция 7 PHP Основы ООП Автор: Дмитрий Левин, Senior PHP Developer,

Подробнее

Глава 8. Наследование: проблемы и альтернативы. Интерфейсы. Композиция

Глава 8. Наследование: проблемы и альтернативы. Интерфейсы. Композиция Глава 8. Наследование: проблемы и альтернативы. Интерфейсы. Композиция Проблемы множественного наследования классов. Интерфейсы Достаточно часто требуется совмещать в объекте поведение, характерное для

Подробнее

Методические указания для выполнения лабораторных работ по дисциплине «Объектно-ориентированный анализ и программирование»

Методические указания для выполнения лабораторных работ по дисциплине «Объектно-ориентированный анализ и программирование» МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Владимирский государственный университет имени Александра Григорьевича

Подробнее

Программирование на JAVA

Программирование на JAVA Программирование на JAVA Владимир Юрьевич Романов, Московский Государственный Университет им. М.В.Ломоносова Факультет Вычислительной Математики и Кибернетики vromanov@cs.msu.su, vladimir.romanov@gmail.com

Подробнее

Объектно-ориентированное

Объектно-ориентированное 10 Объектно-ориентированное программирование Большая часть профессиональных программ пишется на языках объектно-ориентированного программирования (Object-Oriented Programming, OOP), таких как Java, C#

Подробнее

Теория и технология программирования. Основы программирования на языке Java. Классы и объекты

Теория и технология программирования. Основы программирования на языке Java. Классы и объекты Теория и технология программирования Основы программирования на языке Java Классы и объекты 1 Программа Классы и объекты в Java: основные сведения Управление памятью для ссылочных типов Реализация наследования

Подробнее

РАБОЧАЯ ПРОГРАММА по дисциплине М «Технологии объектно-ориентированного программирования»

РАБОЧАЯ ПРОГРАММА по дисциплине М «Технологии объектно-ориентированного программирования» Федеральное государственное бюджетное образовательное учреждение высшего образования «Саратовский государственный технический университет имени Гагарина Ю.А.» Кафедра «Прикладная информатика и программная

Подробнее

Программирование на JAVA

Программирование на JAVA Программирование на JAVA Владимир Юрьевич Романов, Московский Государственный Университет им. М.В.Ломоносова Факультет Вычислительной Математики и Кибернетики vromanov@cs.msu.su, vladimir.romanov@gmail.com

Подробнее

Язык C++ С++ позволяет справиться с возрастающей сложностью программ (в отличие от С). Стандарты (комитета по стандартизации ANSI) 1998, 2011.

Язык C++ С++ позволяет справиться с возрастающей сложностью программ (в отличие от С). Стандарты (комитета по стандартизации ANSI) 1998, 2011. Язык C++ С++ позволяет справиться с возрастающей сложностью программ (в отличие от С). Автор Бьёрн Страуструп. Стандарты (комитета по стандартизации ANSI) 1998, 2011. С++: лучше С, поддерживает абстракции

Подробнее

Binary Studio OOP. Что такое объектно ориентированное программирование?

Binary Studio OOP. Что такое объектно ориентированное программирование? OOP Что такое объектно ориентированное программирование? Объектно-ориентированное программирование это стиль кодирования, который позволяет разработчику группировать схожие задачи в классы. Таким образом

Подробнее

4. Объем дисциплины (модуля) и виды учебной работы Вид учебной работы

4. Объем дисциплины (модуля) и виды учебной работы Вид учебной работы Аннотация рабочей программы дисциплины Направление подготовки: 02.03.02 «Фундаментальная информатика и информационные технологии» Тип образовательной программы: академический бакалавриат Направленность

Подробнее

Разработка API в Java-проекте: как оказывать влияние на людей и не приобрести врагов

Разработка API в Java-проекте: как оказывать влияние на людей и не приобрести врагов Разработка API в Java-проекте: как оказывать влияние на людей и не приобрести врагов Чашников Николай программист JetBrains Nikolay.Chashnikov@jetbrains.com Как возникает API class B class A Как возникает

Подробнее

Многопоточность в Java: основы

Многопоточность в Java: основы Многопоточность в Java: основы Алексей Владыкин 27 ноября 2015 Алексей Владыкин Многопоточность (1) 27 ноября 2015 1 / 24 1 Общие сведения о параллелизме 2 Управление потоками 3 Синхронизация потоков 4

Подробнее

Семинар 6. Наследование. Включение объектов и закрытое наследование. Множественное наследование. Шаблоны классов.

Семинар 6. Наследование. Включение объектов и закрытое наследование. Множественное наследование. Шаблоны классов. Семинар 6. Наследование. Включение объектов и закрытое наследование. Множественное наследование. Шаблоны классов. 1. Наследование и динамическое распределение памяти Пусть в базовом классе осуществляется

Подробнее

Лекция 2. Основные понятия объектно-ориентированного подхода: объекты, классы и методы и их реализация в С#

Лекция 2. Основные понятия объектно-ориентированного подхода: объекты, классы и методы и их реализация в С# Лекция 2. Основные понятия объектно-ориентированного подхода: объекты, классы и методы и их реализация в С# В лекции рассмотрены вопросы, относящиеся к идеологии, методологии и практике моделирования основных

Подробнее

Полиморфизм. Полиморфизм множественность форм. Полиморфизм возможность единообразной обработки данных.

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

Подробнее

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ. Наследование в языке C++

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ. Наследование в языке C++ ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ Наследование в языке C++ НАСЛЕДОВАНИЕ 2 3 НАСЛЕДОВАНИЕ Наследование упорядочивает и ранжирует классы Механизм наследования классов позволяет строить иерархии,

Подробнее

Об авторе 17 О техническом редакторе 17

Об авторе 17 О техническом редакторе 17 Об авторе 17 О техническом редакторе 17 Введение 18 Эволюция Java 18 Java SE 8 21 Структура книги 21 Основные навыки и понятия 21 Вопросы и упражнения для самопроверки 21 Вопросы к эксперту 22 Упражнения

Подробнее

Курсовая работа. Узбекский комитет связи и информатизации Ташкентский Университет Информационный Технологий

Курсовая работа. Узбекский комитет связи и информатизации Ташкентский Университет Информационный Технологий Узбекский комитет связи и информатизации Ташкентский Университет Информационный Технологий Курсовая работа По предмету: «Объектно ориентированный языки программирования» Выполнил: Джалилов Г. Г. Студент

Подробнее

I. Аннотация. 6. Форма промежуточного контроля: экзамен. 7. Язык преподавания: русский

I. Аннотация. 6. Форма промежуточного контроля: экзамен. 7. Язык преподавания: русский I. Аннотация 1. Цели и задачи дисциплины: дать общее представление обучающимся об объектно-ориентированном программировании, о методологии построения модели объектов в виде классов. 2. Место дисциплины

Подробнее

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ 2 3 ООП Объектно-ориентированное программирование - это методология программирования, основанная на представлении программы

Подробнее

Концепции языков программирования

Концепции языков программирования Объектно-ориентированные языки программирования: специализация наследованием, абстрактные классы, динамическое связывание и полиморфизм Темы 1 Специализация наследованием 2 3 4 5 Специализация наследованием

Подробнее

Массивы. В ЯЗЫКЕ программирования Java массивы являются объектами ( 4.3.1), создаются динамически ГЛАВА 10

Массивы. В ЯЗЫКЕ программирования Java массивы являются объектами ( 4.3.1), создаются динамически ГЛАВА 10 ГЛАВА 10 Массивы В ЯЗЫКЕ программирования Java массивы являются объектами ( 4.3.1), создаются динамически и могут присваиваться переменным типа Object ( 4.3.2). Все методы класса Object можно вызывать

Подробнее

Введение 17 Глава 1. Основы Java

Введение 17 Глава 1. Основы Java Введение 17 Структура книги 20 Основные навыки и понятия 20 Упражнения для самопроверки 20 Обращение к знатоку 20 Примеры для опробования 20 Навыки программирования 20 Необходимое программное обеспечение

Подробнее

ИНСТРУМЕНТЫ И СРЕДСТВА ПРОГРАММИРОВАНИЯ

ИНСТРУМЕНТЫ И СРЕДСТВА ПРОГРАММИРОВАНИЯ Министерство образования Республики Беларусь Учреждение образования «Белорусский государственный университет информатики и радиоэлектроники» Кафедра информатики А.А. Волосевич ИНСТРУМЕНТЫ И СРЕДСТВА ПРОГРАММИРОВАНИЯ

Подробнее

ЛАБОРАТОРНАЯ РАБОТА 1. Работа с проектами в среде Borland С.

ЛАБОРАТОРНАЯ РАБОТА 1. Работа с проектами в среде Borland С. ЛАБОРАТОРНАЯ РАБОТА 1 Работа с проектами в среде Borland С. Изучить среду программирования, освоить навыки работы с проектами. Восстановить навыки работы со структурами, освоить приемы использования функций

Подробнее

Практическая работа 3

Практическая работа 3 Практическая работа 3 Задание на практическую работу В процессе написания тестовых заданий ознакомьтесь с: - принципами создания динамических структур в Java (Linked List, FIFO), - механизмами наследования

Подробнее

Структурные типы данных

Структурные типы данных Структурные типы данных Классы и структуры являются двумя основными конструкциями системы общих типов CTS (Common Type System) в платформе.net Framework. Каждая по сути является структурой данных, объединяющей

Подробнее

Интерфейсы Создание интерфейса. get_total() возвращает количество элементов в списке, подвергающемся разбиению на несколько страниц;

Интерфейсы Создание интерфейса. get_total() возвращает количество элементов в списке, подвергающемся разбиению на несколько страниц; Глава 5 Интерфейсы Наследование и полиморфизм являются центральными идеями объектноориентированного анализа, позволяя наиболее эффективно организовать код для иерархических систем. Обычно в реальной практике

Подробнее

Многопоточность в Java: основы

Многопоточность в Java: основы Многопоточность в Java: основы Алексей Владыкин 17 ноября 2014 Алексей Владыкин Многопоточность (1) 17 ноября 2014 1 / 24 1 Общие сведения о параллелизме 2 Управление потоками 3 Синхронизация потоков 4

Подробнее

Лекция 5. PHP И ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

Лекция 5. PHP И ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ Лекция 5. PHP И ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ 5.1. Основы ООП 5.2. Классы и объекты в PHP 5.3. Наследование классов в PHP 5.4. Полиморфизм классов в PHP 5.5. Работа с объектами классов PHP

Подробнее

Тема 2.1 Пакетирование, наследование и полиморфизм

Тема 2.1 Пакетирование, наследование и полиморфизм Тема 2.1 Пакетирование, наследование и полиморфизм Наследование в C++ Наследование классов мощная возможность в объектноориентированном программировании. Оно позволяет создавать производные классы (классы

Подробнее

4 Классы. 4.1 Основы классов

4 Классы. 4.1 Основы классов 4 Классы Класс центральный компонент Java. Поскольку класс определяет форму и сущность объекта, он является той логической конструкцией, на основе которой построен весь язык. Как таковой, класс образует

Подробнее

Массивы и строки в Java

Массивы и строки в Java Массивы и строки в Java Алексей Владыкин 23 сентября 2013 Алексей Владыкин Массивы и строки в Java 23 сентября 2013 1 / 33 1 Ссылочные типы 2 Массивы 3 Строки 4 Кодировки строк 5 Регулярные выражения Алексей

Подробнее

Информатика. Объектно-ориентированное программирование. Часть 3. Марченко Антон Александрович Абрамский Михаил Михайлович г.

Информатика. Объектно-ориентированное программирование. Часть 3. Марченко Антон Александрович Абрамский Михаил Михайлович г. Информатика Объектно-ориентированное программирование. Часть 3 Марченко Антон Александрович Абрамский Михаил Михайлович 2016 г. ООП продолжается Заказали два приложения #1 Система управления договорами

Подробнее

Эта глава предлагает молниеносное турне на тему возможностей языка C#. Да,

Эта глава предлагает молниеносное турне на тему возможностей языка C#. Да, Глава 3 Краткий обзор языка C# Эта глава предлагает молниеносное турне на тему возможностей языка C#. Да, мы уже слышим ваши возражения: Но ведь просто невозможно сжать всю информацию о C# в одну главу!

Подробнее

времени выполнения) компилирует ее содержимое в машинный код

времени выполнения) компилирует ее содержимое в машинный код 1. Объектно-ориентированное программирование 1 1.1. Введение в.net и С# Microsoft.NET это платформа для разработки прикладных программ, основанная и ориентированная на Интернет..NET основывается на двух

Подробнее

Java-классы: взгляд изнутри

Java-классы: взгляд изнутри Java-классы: взгляд изнутри Алексей Владыкин 27 октября 2014 Алексей Владыкин Java-классы: взгляд изнутри 27 октября 2014 1 / 29 1 Reflection API 2 Расположение объекта в памяти 3 Байткод Java Алексей

Подробнее

Качество кода. Владимир Ярославский Инженер-программист. 11 декабря 2008 Sun Microsystems, Inc.

Качество кода. Владимир Ярославский Инженер-программист. 11 декабря 2008 Sun Microsystems, Inc. Качество кода Владимир Ярославский Инженер-программист 11 декабря 2008 Sun Microsystems, Inc. 1 Что будем улучшать Производительность Читаемость Ясность Дизайн 2 Доступ к другому коду Классы: package Атрибуты:

Подробнее

Лекция 3. Концепция наследования

Лекция 3. Концепция наследования Лекция 3. Концепция наследования Рассмотрены вопросы, относящиеся к идеологии и обзору возможностей наследования - одной из фундаментальных концепций, на которых базируется объектно-ориентированное программирование

Подробнее

Информатика. Принципы ООП. Марченко Антон Александрович Абрамский Михаил Михайлович г.

Информатика. Принципы ООП. Марченко Антон Александрович Абрамский Михаил Михайлович г. Информатика Принципы ООП Марченко Антон Александрович Абрамский Михаил Михайлович 2016 г. Электронные устройства Device электронное устройство (абстрактное) Можно включать и выключать (но КАК?) Можно посмотреть

Подробнее

Глава 6 ИНТЕРФЕЙСЫ И ВНУТРЕННИЕ КЛАССЫ

Глава 6 ИНТЕРФЕЙСЫ И ВНУТРЕННИЕ КЛАССЫ Часть 1. Глава 6. Интерфейсы и внутренние классы 139 Глава 6 ИНТЕРФЕЙСЫ И ВНУТРЕННИЕ КЛАССЫ Интерфейсы Интерфейсы подобны полностью абстрактным классам, но не являются классами. Ни один из объявленных

Подробнее

Java-классы под капотом

Java-классы под капотом Java-классы под капотом Алексей Владыкин 20 ноября 2015 Алексей Владыкин Java-классы под капотом 20 ноября 2015 1 / 28 1 Reflection API 2 Расположение объекта в памяти 3 Байткод Java Алексей Владыкин Java-классы

Подробнее

Решение Структура приложения отражена на рисунке ниже:

Решение Структура приложения отражена на рисунке ниже: Задание 1. Создать 3 объекта формы один объект передатчик (PRD) и 2 объекта приемника (PRM1 и PRM2). Объект PRD с помощью командных кнопок должен иметь возможность передать сообщение 1 - му объекту приемнику

Подробнее

Функции ref out определении вызове Main()

Функции ref out определении вызове Main() Функции Функции представляют собой блоки кода, позволяющие выполнять одни и те же операции над различными значениями данных. Функции определяются один раз и могут вызываться из любой точки приложения.

Подробнее

1. ЦЕЛИ, ЗАДАЧИ И СВЕДЕНИЯ О СОДЕРЖАНИИ ДИСЦИПЛИНЫ Цели и задачи дисциплины: 1.2. Требования к уровню освоения содержания курса

1. ЦЕЛИ, ЗАДАЧИ И СВЕДЕНИЯ О СОДЕРЖАНИИ ДИСЦИПЛИНЫ Цели и задачи дисциплины: 1.2. Требования к уровню освоения содержания курса Рабочая программа дисциплины "Современные системы программирования" составлена в соответствии с требованиями к обязательному минимуму содержания основной образовательной программы подготовки информатиков

Подробнее

Элементы функционального программирования

Элементы функционального программирования Элементы функционального программирования Алексей Владыкин 20 октября 2014 Алексей Владыкин Функциональное программирование 20 октября 2014 1 / 31 1 Особенности ФП 2 Функциональные интерфейсы 3 λ-выражения

Подробнее

Содержание. Часть I. Основы Java 21

Содержание. Часть I. Основы Java 21 Содержание Об авторе 13 Введение 15 Как работать с этой книгой 15 Соглашения, используемые в книге 15 Что можно не читать 16 Несколько предположений 17 Структура книги 18 Часть I. Основы Java 18 Часть

Подробнее

объектно-ориентированного программирования

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

Подробнее

Эффективное программирование на Java

Эффективное программирование на Java Эффективное программирование на Java Андрей Дмитриев andrei-dmitriev@yandex.ru http://in4mix2006.narod.ru/ 2008 Copyright (C) 2000-2008 Sun Microsystems, Inc. All rights reserved. Программа Методы генерации

Подробнее

Объектно-ориентированное программирование. Лекция 13

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

Подробнее

Лабораторная работа 1

Лабораторная работа 1 Лабораторная работа 1 Объектно-ориентированное программирование ХАРЬКОВСКИЙ НАЦИОНАЛЬНЫЙ АВТОМОБИЛЬНО-ДОРОЖНЫЙ УНИВЕРСИТЕТ ФАКУ ЛЬТЕТ КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ И МЕХАТРОНИКИ Кафедра информационных технологий

Подробнее

МИНОБРНАУКИ РОССИИ ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ФАКУЛЬТЕТ ИНФОРМАТИКИ

МИНОБРНАУКИ РОССИИ ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ФАКУЛЬТЕТ ИНФОРМАТИКИ МИНОБРНАУКИ РОССИИ ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ФАКУЛЬТЕТ ИНФОРМАТИКИ Рабочая программа дисциплины (модуля) Программирование 4 (ООП С++) Направление подготовки 010300 Фундаментальная информатика

Подробнее

4. Понятие класса. Программа 7. Класс Box

4. Понятие класса. Программа 7. Класс Box 4. Понятие класса Класс определяет новый тип данных, используя который можно определять переменные этого типа, которые называются объектами или экземплярами класса. Объявление класса имеет вид: class classname

Подробнее

Создание и использование пакетов. Имена в Java Пакеты в Java Объявления пакета Импорт-выражения Базовая система для пакетов Соглашения по именованию

Создание и использование пакетов. Имена в Java Пакеты в Java Объявления пакета Импорт-выражения Базовая система для пакетов Соглашения по именованию Создание и использование пакетов Имена в Java Пакеты в Java Объявления пакета Импорт-выражения Базовая система для пакетов Соглашения по именованию Имена в Java Имена используются в программе для доступа

Подробнее

Программирование на Java

Программирование на Java Лекция 8. Объектная модель в Java 20 января 2003 года Авторы документа: Николай Вязовик (Центр Sun технологий МФТИ) Евгений Жилин (Центр Sun технологий МФТИ) < gene@itc.mipt.ru>

Подробнее

Обобщения. Основные понятия

Обобщения. Основные понятия Обобщения. Основные понятия Термин «обобщение», по существу, означает параметризированный тип. Особая роль параметризированных типов состоит в том, что они позволяют создавать классы, структуры, интерфейсы,

Подробнее

ÀÑÒÜ I. ÏÅÐÂÎÅ ÇÍÀÊÎÌÑÒÂÎ Ñ C++

ÀÑÒÜ I. ÏÅÐÂÎÅ ÇÍÀÊÎÌÑÒÂÎ Ñ C++ Ñîäåðæàíèå Введение 16 О чем эта книга 16 Прилагаемый компакт-диск 16 Что такое C++ 17 Соглашения, используемые в книге 17 Как организована эта книга 18 И еще... 18 Часть I. Первое знакомство с C++ 18

Подробнее

Лабораторная работа 3

Лабораторная работа 3 Лабораторная работа 3 Тема:"Классы. Конструкторы и деструкторы." 1. Освоить на практике создание пользовательских типов. 2. Выяснить назначение и принципы работы конструкторов и деструкторов, а также экспериментально

Подробнее

C#: пользовательские типы

C#: пользовательские типы C#: пользовательские типы типы данных C# типы значения: перечисления (enum) структуры (struct) ссылочные типы: массивы классы (class) перечисления Существует возможность декларировать перечислимые типы

Подробнее

C++ MFC / STL / CLI.NET Visual Studio

C++ MFC / STL / CLI.NET Visual Studio C++ MFC / STL / CLI.NET Visual Studio Популярность языков (по данным tiobe.com (янв-2014) Язык программирования 2014 2009 2004 1999 1994 1989 C 1 2 2 1 1 1 Java 2 1 1 16 - - Objective-C 3 42 48 - - - C++

Подробнее

Ответы на вопросы экзамена по курсу «Языки программирования»

Ответы на вопросы экзамена по курсу «Языки программирования» ы на вопросы экзамена по курсу «Языки программирования» 09.01.2017 В ответах курсивом выделены необязательные пояснения, которые можно опустить (особенно на экзамене) Вариант 2 Задача 2-1 Есть ли ошибка

Подробнее

public private Обертывание

public private Обертывание Интерфейсы Основное назначение интерфейсов - обеспечить возможность классу иметь несколько родителей - один полноценный класс, а остальные в виде интерфейсов. Интерфейс позволяет описывать некоторые желательные

Подробнее

Типы данных и основы ООП

Типы данных и основы ООП Типы данных и основы ООП Андрей Дмитриев andrei-dmitriev@yandex.ru http://in4mix2006.narod.ru/ 2008 Copyright (C) 2000-2008 Sun Microsystems, Inc. All rights reserved. Что такое тип данных? Спектр значений

Подробнее

Объектно-ориентированное программирование в PHP для начинающих

Объектно-ориентированное программирование в PHP для начинающих Объектно-ориентированное программирование в PHP для начинающих Доброго времени суток, уважаемые читатели нашего блога! Добро пожаловать на первый урок из серии уроков по объектноориентированному программированию

Подробнее

ИЗУЧЕНИЕ ЯЗЫКА ПРОГРАММИРОВАНИЯ JAVA: РАЗРАБОТКА КОНСОЛЬНОГО ПРИЛОЖЕНИЯ ДЛЯ ОРГАНИЗАЦИИ РАБОТЫ МАГАЗИНА ИГРУШЕК

ИЗУЧЕНИЕ ЯЗЫКА ПРОГРАММИРОВАНИЯ JAVA: РАЗРАБОТКА КОНСОЛЬНОГО ПРИЛОЖЕНИЯ ДЛЯ ОРГАНИЗАЦИИ РАБОТЫ МАГАЗИНА ИГРУШЕК УДК 004.42 Чаденкова А.А., Якушев Д.С. студенты 1 курс, факультет «Информационные системы и технологии» ФГБОУ ВО «Поволжский государственный университет телекоммуникаций и информатики», г. Самара, Российская

Подробнее

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ЛЕСОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И МОДЕЛИРОВАНИЯ

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ЛЕСОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И МОДЕЛИРОВАНИЯ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ЛЕСОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И МОДЕЛИРОВАНИЯ Т.С. Крайнова Объектно-ориентированный анализ и программирование

Подробнее

Основы программирования на Java. Исключения

Основы программирования на Java. Исключения Основы программирования на Java Исключения Программа Классы и объекты в Java: основные сведения Управление памятью для ссылочных типов Реализация наследования в Java Пакеты как механизм реализации пространств

Подробнее

Федеральное агентство по образованию Псковский государственный политехнический институт. Антонов И.В., Бруттан Ю.В.

Федеральное агентство по образованию Псковский государственный политехнический институт. Антонов И.В., Бруттан Ю.В. Федеральное агентство по образованию Псковский государственный политехнический институт Антонов И.В., Бруттан Ю.В. ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ (С#) Учебно-методическое пособие для студентов

Подробнее

Программа учебного курса ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

Программа учебного курса ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ Программа учебного курса ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ I. Организационно-методический раздел. Курс реализуется в рамках специальности 220400 «Программное обеспечение вычислительной техники

Подробнее

Вариант 2 #1. Вариант Что выведет программа? class Base { Base() { System.out.print("Base"); public class Alpha extends Base {

Вариант 2 #1. Вариант Что выведет программа? class Base { Base() { System.out.print(Base); public class Alpha extends Base { Вариант 2. 1. Что выведет программа? Вариант 2 #1 class Base { Base() { System.out.print("Base"); public class Alpha extends Base { new Alpha(); /* Line 12 */ new Base(); /* Line 13 */ a. Base b. BaseBase

Подробнее

CASE-СРЕДСТВА РАЗРАБОТКИ ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ САПР. Лекция 5 «Разработка требований к информационному обеспечению»

CASE-СРЕДСТВА РАЗРАБОТКИ ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ САПР. Лекция 5 «Разработка требований к информационному обеспечению» CASE-СРЕДСТВА РАЗРАБОТКИ ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ САПР Лекция 5 «Разработка требований к информационному обеспечению» Объектно-ориентированный подход ООП основан на представлении предметнойобласти задачи

Подробнее

Язык программирования Си++ Семинар 9. Зачет: методика его проведения, теоретический минимум и типовые задания.

Язык программирования Си++ Семинар 9. Зачет: методика его проведения, теоретический минимум и типовые задания. Язык программирования Си++ Иванов А.П., Князева О.С. Семинар 9. Зачет: методика его проведения, теоретический минимум и типовые задания. Зачет проводится в практикуме и состоит из двух частей: теоретической

Подробнее

4 Основы языка Java 4.1 Основы: Программа DragonWorld package heroes;

4 Основы языка Java 4.1 Основы: Программа DragonWorld package heroes; 4 Основы языка Java 4.1 Основы: Программа DragonWorld package heroes; public class HelloDragonWorld { public static void main(string []args){ System.out.println( Hello DragonWorld! ); 4.2 Основы: пакет

Подробнее

Программирование на языке Java

Программирование на языке Java Теория и технология программирования Программирование на языке Java Лекция 5. Библиотека коллекций Глухих Михаил Игоревич, к.т.н., доц. mailto: glukhikh@mail.ru Назначение Работа с контейнерами различного

Подробнее

А. В. Гаврилов. Объектно-ориентированное программирование. Вопросы к экзамену

А. В. Гаврилов. Объектно-ориентированное программирование. Вопросы к экзамену МИНОБРНАУКИ РОССИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ АКАДЕМИКА С.П.КОРОЛЕВА

Подробнее

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

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

Подробнее