Информация


Programm.ws - это сайт, на котором вы можете почитать литературу по языкам программирования, а так-же посмотреть примеры работающих программ на С++, ассемблере, паскале и много другого..

Программирование — в обычном понимании, это процесс создания компьютерных программ.
В узком смысле (так называемое кодирование) под программированием понимается написание инструкций — программ — на конкретном языке программирования (часто по уже имеющемуся алгоритму — плану, методу решения поставленной задачи). Соответственно, люди, которые этим занимаются, называются программистами (на профессиональном жаргоне — кодерами), а те, кто разрабатывает алгоритмы — алгоритмистами, специалистами предметной области, математиками.
В более широком смысле под программированием понимают весь спектр деятельности, связанный с созданием и поддержанием в рабочем состоянии программ — программного обеспечения ЭВМ. Более точен современный термин — «программная инженерия» (также иначе «инженерия ПО»). Сюда входят анализ и постановка задачи, проектирование программы, построение алгоритмов, разработка структур данных, написание текстов программ, отладка и тестирование программы (испытания программы), документирование, настройка (конфигурирование), доработка и сопровождение.

Глава 6. Классы-коллекции

Класс Properties

Класс 'Properties расширяет класс Hashtabie. Он предназначен в основном для ввода и вывода пар свойств системы и их значений. Пары хранятся в виде строк типа string. В классе Properties два конструктора:

Properties () — создает пустой объект;

Properties (Properties default) — создает объект с заданными парами свойств default.

Кроме унаследованных от класса Hashtabie методов в классе Properties есть еще следующие методы.

Два метода, возвращающих значение ключа-строки в виде строки:

  • string getProperty (string key) — возвращает значение по ключу key;
  • String getProperty(String.key, String defaultValue) — возвращает значение по ключу key; если такого ключа нет, возвращается defaultValue.

Метод setProperty(String key, String value) добавляет новую пару, если ключа key нет, и меняет значение, если ключ key есть.

Метод load(Inputstream in) загружает свойства из входного потока in.

Методы list(PrintStream out) И list (PrintWriter out) выводят свойства в выходной поток out.

Метод store (OutputStream out, String header) выводит свойства в выходной поток out с заголовком header.

Очень простой листинг 6.4 и рис. 6.2 демонстрируют вывод всех системных свойств Java.

Листинг 6.4. Вывод системных свойств 

class Prop{

  public static void main(String[] args){

  System.getProperties().list(System.out); 

 } 

}

Примеры классов Vector, Stack, Hashtabie, Properties показывают удобство классов-коллекций. Поэтому в Java 2 разработана целая иерархия коллекций. Она показана на рис. 6.3. Курсивом 'записаны имена интерфейсов. Пунктирные линии указывают классы, реализующие эти интерфейсы. Все коллекции разбиты; на три группы, описанные в интерфейсах List, Set и Map. 

Рис. 6.2. Системные свойства



Рис. 6.3. Иерархия классов и интерфейсов-коллекций

Примером реализации интерфейса List может служить класс Vector, примером реализации интерфейса мар — класс Hashtabie.

Коллекции List и set имеют много общего, поэтому их общие методы объединены и вынесены в суперинтерфейс Collection.

Посмотрим, что, по мнению разработчиков Java API, должно содержаться в этих коллекциях.