background preloader

Lec2

Facebook Twitter

INTUIT.ru: Курс: Программирование на ..: Лекция №2: Основы объектно-ориентированного программирования. Методология процедурно-ориентированного программирования Появление первых электронных вычислительных машин, или компьютеров, ознаменовало новый этап в развитии техники вычислений.

INTUIT.ru: Курс: Программирование на ..: Лекция №2: Основы объектно-ориентированного программирования

Казалось, достаточно разработать последовательность элементарных действий, каждое из которых можно преобразовать в понятные компьютеру инструкции, и любая вычислительная задача будет решена. Эта идея оказалась настолько жизнеспособной, что долгое время доминировала над всем процессом разработки программ. Появились специализированные языки программирования, созданные для разработки программ, предназначенных для решения вычислительных задач. Примерами таких языков могут служить FOCAL (FOrmula CALculator) и FORTRAN (FORmula TRANslator). Основой такой методологии разработки программ являлась процедурная, или алгоритмическая, организация структуры программного кода.

При увеличении объемов программ для упрощения их разработки появилась необходимость разбивать большие задачи на подзадачи. Рис. 2.1. INTUIT.ru: Курс: Программирование на ..: Лекция №5: Имена. Пакеты. Введение Имена (names) используются в программе для доступа к объявленным (declared) ранее "объектам", "элементам", "конструкциям" языка (все эти слова-синонимы были использованы здесь в их общем смысле, а не как термины ООП, например).

INTUIT.ru: Курс: Программирование на ..: Лекция №5: Имена. Пакеты

Конкретнее, в Java имеются имена: пакеты;классы;интерфейсы;элементы (member) ссылочных типов:поля;методы;внутренние классы и интерфейсы;аргументы:методов;конструкторов;обработчиков ошибок;локальные переменные. Соответственно, все они должны быть объявлены специальным образом, что будет постепенно рассматриваться по ходу курса. Так же объявляются конструкторы Напомним, что пакеты (packages) в Java – это способ логически группировать классы, что необходимо, поскольку зачастую количество классов в системе составляет несколько тысяч, или даже десятков тысяч. Имена Простые и составные имена. У пакетов и ссылочных типов (классов, интерфейсов, массивов) есть элементы (members).

Далее классы и интерфейсы будут называться объединяющим термином тип (type). Автоупаковка примитивов в Java. Автоупаковка это механизм неявной инициализации объектов классов-оберток (Byte, Short, Character, Integer, Long, Float, Double) значениями соответствующих им исходных примитивных типов (соотв. byte, short, char, int, long, float, double), без явного использования конструктора класса.

Автоупаковка примитивов в Java

Автоупаковка происходит при прямом присвоении примитива - классу-обертке (с помощью оператора"="), либо при передаче примитива в параметры метода (типа "класса-обертки"). Автоупаковке в "классы-обертки" могут быть подвергнуты как переменные примитивных типов, так и константы времени компиляции(литералы и final-примитивы). При этом литералы должны быть синтаксически корректными для инициализации переменной исходного примитивного типа. Автоупаковка переменных примитивных типов требует точного соответствия типа исходного примитива - типу "класса-обертки".

Например, попытка автоупаковать переменную типа byte в Short, без предварительного явного приведения byte->short вызовет ошибку компиляции. Познаём Java. Третья чашка: примитивные типы, и объекты. Базовые конструкции. Типа реальные типы Думаю, после краткого экскурса в возможности Java и прочитывания пары десятков строк кода примеров, вам захотелось узнать, чем должен уметь оперировать каждый Java-программист.

Познаём Java. Третья чашка: примитивные типы, и объекты. Базовые конструкции

Что ж, давайте поговорим о примитивных типах, классах (в том числе нескольких основных), сравнении, передаче параметров и простых структурах в Java. Глава 3: примитивные типы и операции с ними в Java. Операторы сравнения и логические операторы. Ветвление в программе. Условный оператор. / Блог им. articles. Логические операторы Существует несколько бинарных логических операторов и один унарный.

Операторы сравнения и логические операторы. Ветвление в программе. Условный оператор. / Блог им. articles

В качестве аргументов для всех этих операторов выступают логические литералы (константы), логические переменные и выражения, имеющие логическое значение. Операторы: Оператор return / Статьи. Последний из управляющих операторов — return.

Оператор return / Статьи

Его используют для выполнения явного возврата из метода. То есть он снова передает управление объекту, который вызвал данный метод. Как таковой этот оператор относится к операторам перехода. Хотя полное описание оператора return придется отложить до рассмотрения методов в главе 6, все же кратко ознакомимся с его особенностями. Оператор return можно использовать в любом месте метода для возврата управления тому объекту, который вызвал данный метод. // Демонстрация использования оператора return.class Return {public static void main(String args[]) {boolean t = true; System.out.println("До выполнения возврата.

"); if (t) return; // возврат к вызывающему объекту System.out.println("Этот оператор выполняться не будет. ");}} Вывод этой программы имеет вид: До выполнения возврата. Как видите, заключительный оператор println () не выполняется. Передача параметров по ссылке и по значению. Передача по ссылке подразумевает передачу ссылки на объект.

Передача параметров по ссылке и по значению

В этом случае реализация метода потенциально может модифицировать переданный объект (например, вызвав метод, изменяющий состояние объекта). В случае передачи по значению параметр копируется. Изменение параметра не будет заметно на вызывающей стороне. В Java объекты всегда передаются по ссылке, а примитивы - по значению Pass By Reference means the passing the address itself rather than passing the value. Pass By Value means passing a copy of the value to be passed.