- •Рейтинг №1 Java-технологии распределенных компьютерных систем
- •Инструментальные средства java для создания распределенных приложений
- •Первая java-программа
- •Реализация стандартного вывода
- •Интерфейсы
- •Наследование
- •Import имя_пакета.*;
- •Ссылки this и super
- •Исключения
- •Массивы
- •Классы, методы пакета java.Net используемое для создания socket
- •Виртуальная машина java
- •Распределительные компьютерные системы и их характеристики
- •Промежуточное программное обеспечение распределительных компьютерных систем
- •Архитектура java rmi
- •Порядок создания распределенного rmi-приложения
- •Достоинства и недостатки java-rmi
- •Технология corba
- •Этапы создания corba приложений
- •Определение интерфейса
- •Создание файлов client и server corba-приложений
- •Код локального интерфейса
- •Html. Основные теги html. Html-документы
- •Основные теги html
- •Форма html-документа
- •Основной поток cgi-программ
- •Сервлет. Технология java
- •Компоненты ejb
- •Реляционные структуры баз данных
- •Основные команды ddl
- •Основные команды dml
- •Основные команды dcl
- •Создание бд и таблиц с использованием sql
- •Основные этапы создания бд и таблиц
- •Использование idbc api
- •Пример java-приложения работающего с субд
- •Страницы jsp
- •Теги и встроенные объекты jsp
- •Основные теги jsp-страниц.
- •Xml. Структура xml-документа
- •Пространство имен
- •Схемы xml
- •Архитектуры распределенных приложений. Web-сервисы
- •Простая web-служба
- •Код клиента web-службы
- •Архитектура web-служб
- •Jms. Архитектура jms
- •Модели сообщений jms
- •Архитектура “точка-точка”
- •Пример распределенного jms-приложения
Интерфейсы
Java позволяет классу наследовать один класс. Приодалеть этот недостаток позволяют интерфейсы.
Интерфейс – описание класса без его реализации. Синтаксис объявления интерфейса:
[модификатор доступа]interface Имя_интерфейса
{поле_константа_1;
поле_константа_2;
… … … … … … … … …
поле_константа_n;
объявление_метода_1;
объявление_метода_2;
… … … … … … … … …
объявление_метода_n;
}
Подчеркнем, что объявление метода в интерфейсе – это не его полная реализация. Класс который использует данный интерфейс должен полностью реализовать все методы интерфейса.
public interface Fruit
{public string get Name();}
public class Apple implements Fruit
{public string get Name()
{return “Apple”}
}
public class Orange implements Fruit
{public string get Name()
{return “Orange”;}
}
public class Storage
{public static void main (String [] args}
Apple a=new Apple();
Orange 0=new Orange();
print Name(a); print Name(0);}
public static void print Name(Fruit f)
{System.out.println(f.getName());}
}
>javac*.java
>java Storage
Apple
Orange
Метод print Name передается параметр типа интерфейс может работать с двумя экземплярами различных классов
Наследование
Одно из самых важных особенностей языков программирования является наследование. Наследование позволяет создавать новые классы на базе уже имеющихся при этом вновь созданные классы наследуют методы и поля родительских классов. Объявление того что класс В наследует класс А имеет вид:
class B extends A
{…}
Класс А называется суперклассом или родительским классом В. Класс В называется субклассом или дочерним классом класса Т.
public class P
{string name=”Оксана”;
void print(string str)
System.out.println(str);}
public class Dextends P
{public static void main(string[]args)
{D d=new D();
d.print(d.name);}
}
>javac*.java
>javaD
Oksana
Пакеты
В библиотеку javaIP входят 1000 классов. Программист в ходе работы добавляет 100 своих. Для удобства работы с классами java введена конструкция пакеты. Пакеты используются для группировки связанных между собой классов и интерфейсов. Могут включать в себя и вложенные подпакеты. Образуется древовидная структура пакетов и подпакетов. Эта структура с точностью отображается на структуру файловой системы. Каждый пакет образует одно пространство имен newspace. Это означает что все имена классов и интерфейсов в пакете должны быть уникальны. Имена в разных пакетах могут совпадать, но это разные программные единицы. Использование всех элементов пакеты встречаются в java-программах наиболее часто. Импорт всего пакетов программы осуществляется с помощью выражения:
Import имя_пакета.*;
Предварительно необходимый нам класс (интерфейс) был помещен в пакет с названием имя_пакета. Кроме того вначале кода этого класса (интерфейса) добавлена строка: package имя_пакета.
Ссылки this и super
Ссылка this в конструкторе или методе класса указывает на текущий объект. Обычно this используется для правильного определения компилятора или переменных. Когда имя локальное или глобальное совпадают. Класс this
class Myclass
{int i;
void set I(int i)
{this.i=i;}
}//имеет те же функции особенности что и без this.
class Myclass
{int i;
void set I(int my_i)
{i=my_i;}
}
Ссылка super позволяет обратится непосредственно к конструктору суперкласса. Ссылка super используется для инициализации данного экземпляра класса.
class Point
{int x,y;
Point(int x, int y)
{this,x=x;this.y=y;}
}
Class Point 3D extends Point
{int z;
Point 3D(int x, int y, int z)
{super(x,y);this,z=z;}
public static void main(string[]args){
Point 3D P=new Point3D(10,20,30);
System.out.println(“x=”+p.x+”y”=+p*y+”z=”+pz);
}}
>javac *.java
>java Point 3D
x=10 y=20 z=30