Презентации, доклады, проекты без категории

Наследование классов
Наследование классов
Спецификация базового класса Суперкласс указывается ключевым словом extends. Он должен быть доступным классом и не иметь модификатора final. Классы, для которых не указан расширяемый класс, являются неявным расширением класса Object. Object oref = new A(); Базовый класс Родительский класс (Суперкласс) Производный класс (Подкласс) Класс Object Доступ к компонентам базового класса super — используется как ссылка на экземпляр суперкласса с целью обеспечения доступа к одноименным нестатическим полям и методам суперкласса. class ClassA { float x; ... } class ClassB extends ClassA { int x; ... public void method l(int x) { int iX1 = x; // присваивание значения параметра метода int iX2 = this.x; // присваивание значения поля данного класса float fX = super.x; // присваивание значения поля суперкласса } } class ClassA { ... public void method2() {...} ... } class ClassB extends ClassA { ... public void method2() { super.method2(); // вызов метода суперкласса } }
Продолжить чтение
Интерфейсы
Интерфейсы
Интерфейсные константы Интерфейсы можно использовать для импорта в различные классы совместно используемых констант. public interface MyConstants          { public static final double price = 1450.00; public static final int counter = 5;          } interface MyColors { int RED = 1, YELLOW = 2, BLUE = 4; } Описание и реализация методов интерфейса public interface Mylnterface          { abstract public void add(int x, int y); void volume(int x,int y, int z);          } class Demo1 implements Mylnterface class Demo2 implements Mylnterface { { public void add(int x, int y) public void add(int x, int y)           { { System.out.println(      +(x+y)); System.out.println(      +(x*y));           } } public void volume(int x, int y, int z) public void volume(int x, int y, int z)           { { System.out.println(      +(x*y*z)); System.out.println(      +(x-y-z));           } } public static void main(String args[])           { Mylnterface d1= new Demo1(); Mylnterface d2= new Demo2(); d1.add(10,20); d2.add(10,20); d1.volume(10,10,10); d2.volume(10,10,10);           } } Интерфейс можно использовать как ссылочный тип при объявлении переменных. Переменная или выражение типа интерфейса могут ссылаться на любой объект, который является экземпляром класса, реализующего данный интерфейс. Переменную типа интерфейса можно использовать только после присвоения ей ссылки на объект ссылочного типа, для которого был реализован данный интерфейс.
Продолжить чтение
Дублирование ссылок и Клонирование объектов
Дублирование ссылок и Клонирование объектов
Типы клонирования Клонирование объекта бывает 2-х видов: Поверхностное (shallow); в этом случае копируются значения простых полей и ссылочные значения. Глубокое (deep); клонирование составного объекта, это достигается через рекурсивное клонирование составляющих его объектов. data1 MyData int a; MyData1 data2 MyData int a; data1 MyData int a; MyData1 data2 MyData int a; MyData1 Переопределение метода clone В Java у базового класса java.lang.Object существует метод clone, с помощью которого можно создать новый объект точно такой же как и текущий. Метод clone в классе Object является защищенным (protected) protected native Object clone() throws CloneNotSupportedException; native, говорит о том, что его реализация предоставляется виртуальной машиной. Чтобы этот метод сделать общедоступным следует его переопределить в подклассе с областью видимости public и реализовывать интерфейс Сloneable. Интерфейс Cloneable не реализует ни одного метода. Он является всего лишь маркером, говорящим, что данный класс реализует клонирование объекта. Если класс не реализует данный интерфейс, то будет выброшено исключение CloneNotSupportedException. public class MyData implements Cloneable { public int a; MyData1 d; public MyData clone() throws CloneNotSupportedException { MyData obj = (MyData)super.clone(); // поверхностное копирование return obj; } }
Продолжить чтение
Основные понятия обработки событий
Основные понятия обработки событий
Классы событий ActionEvent - событие, определяемое компонентом, например нажатие кнопки; ComponentEvent - генерируется, когда позиция, размер или видимость компонента изменяются; ContainerEvent - генерируется при добавлении или удалении элемента из контейнера; FocusEvent - генерируется при получении или потери фокуса ввода компонентом; ItemEvent - событие выбора или отменены выбора элемента. Например, изменение состояния кнопки-флажка, выбор элемента меню или списка; KeyEvent - событие ввода с клавиатуры; MouseEvent - события мыши; WindowEvent - события окна, как активация и свертывание. Интерфейсы обработки событий ActionListener - интерфейс обработки события ActionEvent; ItemListener - интерфейс обработки события ItemEvent; KeyListener - интерфейс обработки события KeyEvent; MouseListener - интерфейс обработки события MouseEvent, для нажатия/отжатия кнопок и входа/ухода курсора мыши с области компонента; MouseMotionListener - интерфейс обработки события MouseEvent, для движение курсора мыши или перетаскивании мышью; MouseWheelListener - интерфейс обработки события MouseEvent, для прокрутки колеса мыши.
Продолжить чтение
Организация потоков в Java
Организация потоков в Java
Процессы и потоки Процесс — это экземпляр программы, который запускается независимо от остальных, у него есть собственное адресное пространство. Поток – это одна из веток процесса. Все потоки разделяют адресное пространство породившего их процесса и имеют доступ к одним данным. Один из потоков – «главный» начинает выполняться первым при запуске Java-программы. Главный поток создается автоматически с именем main и приоритетом 5 по умолчанию. От него порождаются дочерние потоки. Классы для работы с потоками Класс Thread предназначен для создания нового потока. Он определяет следующие основные конструкторы :         Thread()         Thread(Runnable object)         Thread(Runnable object, String name)         Thread(String name) где name - имя, присваиваемое потоку, object - экземпляр объекта Runnable . Если имя не присвоено, система сгенерирует уникальное имя в виде Thread-N, где N - целое число. Для создания потока можно использовать также интерфейс Runnable public interface Runnable { public abstract void run(); } http://www.javaportal.ru/java/class/Thread.html
Продолжить чтение
Оптимизация рабочего процесса молочного охладителя
Оптимизация рабочего процесса молочного охладителя
Цель работы: Определить область оптимальных технологических режимов молочного охладителя.   НЕОБХОДИМОЕ ОБОРУДОВАНИЕ: Охладитель молока ОМ-1. Термометры (от 0°…100°С). Мерные сосуды. Секундомер. СОДЕРЖАНИЕ РАБОТЫ На эффективность работы молочных охладителей влияние оказывают ряд технологических факторов: начальные температуры молока и охлаждающей жидкости, стоимость охлаждающей жидкости, материал стенок охладителя, соотношение между подачей охлаждающей жидкости и подачей молока и др. В экспериментах лабораторной работы приняты два основных технологических фактора - подача охлаждающей воды В и подача молока М, соотношение которых характеризуется коэффициентом кратности подачи воды: , где В - подача охлаждающей воды, кг/с; М - подача молока, кг/с.
Продолжить чтение
РУСЬ ДО 12 ВЕКА 879 – 912 гг
РУСЬ ДО 12 ВЕКА 879 – 912 гг
879 – 912 – правление Олега. Вещий. Лествичный порядок престолонаследия. 882 – поход на Киев, убил воевод Рюрика - Аскольда и Дира, образовал единое государство Киевская Русь. « Да будет Киев матерью городов русских». Провозгласил себя Великим киевским князем. 907-911- русско-византийская война. Корабли на колѐсах. В честь победы щит на ворота Царьграда. Первый письменный договор: дань, право беспошлинной торговли русским купцам. Современник: Болгарский царь Симеон. 912-945 – правление Игоря. Старый. Подчинил уличей и тиверцев. 941-945- русско-византийская война. Греческий огонь. По договору уменьшена дань, отменено право беспошлинной торговли, помощь Византии в борьбе с хазарами и арабами. 945 – восстание древлян во главе с князем Малом во время сбора Игорем полюдья. « Надо умерщвить хищного волка, или всѐ стадо падѐт его жертвою». Воевода Свенельд. Полюдье – объезд князя с дружиной по зависимым территориям для сбора дани. Полюдье с осени до весны, дань с каждого дыма, по землям древлян - дреговичей-кривичей-радимичей-северян. 945-962- правление Ольги. Святая. Легенда « О мести княгини Ольги» Ввела постоянный налог. Повоз - способ сбора дани. Урок – норма сбора дани. Погост – укреплѐнное поселение для сбора дани. 957 – поездка в Константинополь, чтобы подтвердить союз с Византией против хазар и арабов. Приняла крещение. 945-972- правление Святослава. Воитель. « Иду на Вы». Александр Македонский Восточной Европы. 964 – поход на Хазарский каганат. Подчинение вятичей. Прекращение существования Хазарии. 967 – поход на Болгарию. Присоединение нижнего течения Дуная с Переяславцем, который хотел сделать столицей.
Продолжить чтение