Презентация Классы и интерфейсы (продолжение) онлайн
На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Классы и интерфейсы (продолжение) абсолютно бесплатно. Урок-презентация на эту тему содержит всего 68 слайдов. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Классы и интерфейсы (продолжение)
Оцените!
Оцените презентацию от 1 до 5 баллов!
- Тип файла:ppt / pptx (powerpoint)
- Всего слайдов:68 слайдов
- Для класса:1,2,3,4,5,6,7,8,9,10,11
- Размер файла:269.00 kB
- Просмотров:111
- Скачиваний:0
- Автор:неизвестен
Слайды и текст к этой презентации:
№3 слайд
![Внутренние inner классы](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img2.jpg)
Содержание слайда: Внутренние (inner) классы
Нестатические вложенные классы принято называть внутренними (inner) классами.
Доступ к элементам внутреннего класса возможен из внешнего класса только через объект внутреннего класса, который должен быть создан в коде метода внешнего класса. Объект внутреннего класса всегда скрыто хранит ссылку создавшего его объекта внешнего класса.
№4 слайд
![Внутренние inner классы](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img3.jpg)
Содержание слайда: Внутренние (inner) классы
Методы внутреннего класса имеют прямой доступ ко всем полям и методам внешнего класса, в то же время внешний класс может получить доступ к содержимому внутреннего класса только после создания объекта внутреннего класса.
Внутренние классы не могут содержать статические атрибуты и методы, кроме констант (final static).
Внутренние классы имеют право наследовать другие классы, реализовывать интерфейсы и выступать в роли объектов наследования.
Внутренние классы позволяют окончательно решить проблему множественного наследования, когда требуется наследовать свойства нескольких классов.
№5 слайд
![Внутренние inner классы](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img4.jpg)
Содержание слайда: Внутренние (inner) классы
Пример (После компиляции объектный модуль, соответствующий внутреннему классу,
получит имя Ship$Engine.class):
public class Ship {
// поля и конструкторы
// abstract, final, private, protected - допустимы
public class Engine { // определение внутреннего класса
// поля и методы
public void launch() {
System.out.println("Запуск двигателя");
}
}// конец объявления внутреннего класса
public void init() {// метод внешнего класса
// объявление объекта внутреннего класса
Engine eng = new Engine();
eng.launch();
}
}
№6 слайд
![Внутренние inner классы При](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img5.jpg)
Содержание слайда: Внутренние (inner) классы
При таком объявлении объекта внутреннего класса Engine в методе внешнего класса Ship нет реального отличия от использования какого-либо другого внешнего класса, кроме объявления внутри класса Ship.
Использование объекта внутреннего класса вне своего внешнего класса возможно только при наличии доступа (видимости) и при объявлении ссылки в виде:
Ship.Engine obj = new Ship().new Engine();
№7 слайд
![Внутренние inner классы Если](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img6.jpg)
Содержание слайда: Внутренние (inner) классы
Если внутренний класс наследуется обычным образом другим классом (после extends указывается ИмяВнешнегоКласса.ИмяВнутреннегоКласса), то он теряет доступ к полям своего внешнего класса, в котором он был объявлен.
public class Motor extends Ship.Engine {
public Motor(Ship obj) {
obj.super();
}
}
В данном случае конструктор класса Motor должен быть объявлен с параметром типа Ship, что позволит получить доступ к ссылке на внутренний класс Engine, наследуемый классом Motor.
№8 слайд
![Вложенные nested классы Если](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img7.jpg)
Содержание слайда: Вложенные (nested) классы
Если не существует необходимости в связи объекта внутреннего класса с объектом внешнего класса, то есть смысл сделать такой класс статическим.
Вложенный класс логически связан с классом-владельцем, но может быть использован независимо от него.
При объявлении такого внутреннего класса присутствует служебное слово static, и такой класс называется вложенным (nested).
№9 слайд
![Вложенные nested классы](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img8.jpg)
Содержание слайда: Вложенные (nested) классы
Пример:
public class Ship {
private int id;
// abstract, final, private, protected - допустимы
public static class LifeBoat {
public static void down() {
System.out.println("шлюпки на воду!");
}
public void swim() {
System.out.println("отплытие шлюпки");
}
}
}
№12 слайд
![Исключения Java предоставляет](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img11.jpg)
Содержание слайда: Исключения
Java предоставляет языковую конструкцию, которая носит название механизм исключений, и позволяет осуществлять обработку ошибок, возникающих в процессе выполнения программы.
Исключения возникают когда возникшая проблема не может быть решена в текущем контексте и невозможно продолжение работы программы.
№13 слайд
![Исключения Исключение](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img12.jpg)
Содержание слайда: Исключения
Исключение представляет собой событие, происходящее в процессе выполнения Java-программы в результате нормального хода выполнения команд.
При этом процесс обработки исключения называется перехватом исключения.
Процесс обработки ошибок в Java сводится к перехвату возбужденных исключений.
№14 слайд
![Исключения Исключения](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img13.jpg)
Содержание слайда: Исключения
Исключения представляют собой механизм взаимодействия между кодом, служащим для обнаружения ошибки и кодом, обрабатывающим ошибку.
Исключение возбуждается (throws) тогда, когда возникает определенная ситуация.
После возбуждения исключение перехватывается (catch).
Если исключение не перехватывается явным образом, то вызывается обработчик исключительных ситуаций, определенный в Java по умолчанию, который выводит информацию о стеке вызова текущего метода.
№15 слайд
![Исключения Все исключения](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img14.jpg)
Содержание слайда: Исключения
Все исключения являются наследниками суперкласса Throwable и его подклассов Error и Exception из пакета java.lang.
Исключения делятся на две категории: проверяемые и непроверяемые.
К непроверяемым исключениям относятся исключения, унаследованные от классов Error и RunTimeException. Эти исключения возбуждаются ядром виртуальной машины Java.
№16 слайд
![Исключения Проверяемые](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img15.jpg)
Содержание слайда: Исключения
Проверяемые исключения описываются явно при определении метода или конструктора с помощью ключевого слова throws:
[модификаторы] тип метод (списокПараметров) throws списокИсключений
{
телоМетода
}
или
[модификаторы] конструктор (списокПараметров) throws списокИсключений
{
телоКонструктора
}
№18 слайд
![Исключения Если при](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img17.jpg)
Содержание слайда: Исключения
Если при объявлении метода или конструктора класса указано обрабатываемое исключение, то программист при использовании этого метода или конструктора обязан исполнить одно из трех действий:
1. Перехватить и возбудить данное исключение при помощи ключевого слова throws.
2. Перехватить и обработать исключение при помощи управляющей конструкции try-catch.
3. В текущем методе или конструкторе не перехватывать исключение и при этом обязательно объявить текущий метод или конструктор с ключевым словом throws.
№19 слайд
![Исключения Для перехвата](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img18.jpg)
Содержание слайда: Исключения
Для перехвата проверяемых исключений, которые были возбуждены, используется следующая конструкция:
try
{
операторы, в работе которых может возбудиться исключение
}
[catch типИсключения1 переменная1
оператор1 ]
[catch типИсключения2 переменная2
оператор2 ]
[...]]]
[finally
{
операторN
}]
№20 слайд
![Исключения Оператор после](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img19.jpg)
Содержание слайда: Исключения
Оператор после ключевого слова try исполняется до тех пор, пока он не будет успешно исполнен или до тех пор, пока не будет возбуждено исключение.
В случае возбуждения исключения будут просмотрены все условия catch для поиска подходящего исключения или одного из родительских классов этого исключения и исполнены соответствующие операторы после этих условий.
№21 слайд
![Исключения Исполнение](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img20.jpg)
Содержание слайда: Исключения
Исполнение оператора после ключевого слова finally всегда происходит независимо от того, было ли возбуждено исключение или нет.
Это условие обычно используется для установки состояния объекта или для освобождения внешних ресурсов, например, для закрытия файла.
№22 слайд
![Исключения Если исключение](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img21.jpg)
Содержание слайда: Исключения
Если исключение перехвачено определенным catch - выражением, то управление программой передается операторам этого catch - блока. Обычно в таких catch - блоках выполняются специальные действия, необходимые для устранения ошибок работы программы, вызванных возбужденным исключением.
По завершении работы операторов catch – блока управление все равно передается блоку операторов finally. Однако это не означает обязательность использования finally - блока в конструкции перехвата исключений.
№23 слайд
![Оператор throw Исключительную](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img22.jpg)
Содержание слайда: Оператор throw
Исключительную ситуацию можно создать с помощью оператора throw, если объект-исключение уже существует, или инициализировать его прямо после этого оператора. Для этого может быть использован объект класса Throwable или объект его подкласса, а также ссылки на них.
throw объектThrowable;
№28 слайд
![Массивы Массивом в Java](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img27.jpg)
Содержание слайда: Массивы
Массивом в Java называется упорядоченный набор элементов. В качестве элементов массива могут выступать как данные примитивных типов, так и ссылки на объекты, включая ссылки на другие массивы.
Массив объявляется и создается при помощи выражения:
ТипЭлементов[] имяМассива =
new типЭлементов [размерМассива]
или, эквивалентно:
ТипЭлементов имяМассива[] =
new типЭлементов [размерМассива]
№29 слайд
![Массивы Для создания массива](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img28.jpg)
Содержание слайда: Массивы
Для создания массива необходимо выполнить следующие действия:
Объявить массив - задать имя массива и тип элементов.
Выделить для массива память - задать количество его элементов в вызове оператора new.
Инициализировать массив, поместив в его элементы данные
Массивы являются объектами. Размер массива хранится в поле length объекта. Если массив имеет длину n, то корректными значениями индекса являются числа от 0 до n-1.
При обращении к массиву по некорректному индексу
возбуждается исключение IndexOutOfBoundsException.
№31 слайд
![Массивы Можно создавать](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img30.jpg)
Содержание слайда: Массивы
Можно создавать массив, элементы которого являются массивами. Объявление и создание многомерных массивов имеет вид:
типЭлемента [][] ...имяМассива =
new типЭлементов [размер1][размер2]...
Например:
int [][][] narr = new int [2][3][4];
При создании многомерного массива обязательно требуется указывать первый размер слева. Другие размеры для вложенных массивов можно указывать позже при помощи оператора new. Например:
int [][][] narr = new int [2][][];
...
narr[0] = new int [3][];
narr[1] = new int [3][];
№32 слайд
![Массивы Инициализирующие](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img31.jpg)
Содержание слайда: Массивы
Инициализирующие значения массива задаются в фигурных скобках сразу же после объявления массива, например:
int [] nA ={1,2,3,4};
int [][] nB = {{1,0,0},{0,1,0},{0,0,1}};
String strArr[] ={"aaa", "bbb", "cde"+"xyz"};
int [][][] narr = {
{ {0}, {0, 1}, {0, 1, 2} },
{ {0, 1, 2}, {0, 1}, {0} }
};
№33 слайд
![Массивы - пример public class](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img32.jpg)
Содержание слайда: Массивы - пример
public class ex1 {
static int [][][] narr = {
{ {0}, {0, 1}, {0, 1, 2} },
{ {0, 1, 2}, {0, 1}, {0} }
};
public static void main( String [] args ) {
System.out.println( narr.length );
for ( int i = 0; i < narr.length; i++ ) {
System.out.println( narr[i].length );
for ( int j = 0; j < narr[i].length; j++ )
System.out.print(
narr[i][j].length + " " );
System.out.println();
}
}
}
№35 слайд
![Массивы класс](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img34.jpg)
Содержание слайда: Массивы – класс java.util.Arrays
Класс Arrays содержит несколько удобных методов, предназначенных для работы с массивами.
static String toString(type[] a);
- возвращает строку с элементами а, заключенную в квадратные скобки и разделенную запятыми.
static type[] copyOf(type[] a, int length);
static type[] copyOf(type[] a, int start, int end);
-возвращает массив того же типа, что и а, длиной либо length, либо end - start, заполненный значениями из а.
№36 слайд
![Массивы класс](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img35.jpg)
Содержание слайда: Массивы – класс java.util.Arrays
static void sort(type[] a);
- cортирует массив, используя алгоритм быстрой сортировки
static int binarySearch(type[] a, type v);
static int binarySearch(type[] a, int start, int end, type v);
- использует алгоритм бинарного поиска для нахождения значения v; в случае успеха возвращается индекс найденного элемента; в противном случае возвращается отрицательное значение г; -г - 1 указывает на индекс позиции, куда должен быть вставлен искомый элемент, чтобы сохранился порядок сортировки.
№38 слайд
![Строки Строки это основной](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img37.jpg)
Содержание слайда: Строки
Строки – это основной носитель текстовой информации. Строки не являются массивами символов типа char, это объекты соответствующего класса.
Пакет java.lang содержит классы String, StringBuilder и StringBuffer, поддерживающие работу со строками.
Эти классы объявлены как final, что лишает возможности создавать на их основе порожденные классы.
№39 слайд
![Строки класс String Каждая](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img38.jpg)
Содержание слайда: Строки – класс String
Каждая строка, создаваемая с помощью оператора new или с помощью литерала является объектом класса String.
Значение объекта String не может быть изменено после создания при помощи какого-либо метода класса. Любое изменение строки приводит к созданию нового объекта.
Если в выражении присутствует хотя бы один объект типа String, остальные объекты преобразуются в String с помощью метода toString().
№40 слайд
![Строки класс String Класс](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img39.jpg)
Содержание слайда: Строки – класс String
Класс String поддерживает несколько конструкторов
String()
String(String str)
String(byte asciichar[])
String(char[] unicodechar)
String(StringBuffer sbuf)
String(StringBuilder sbuild)
и др.
Когда Java встречает литерал, заключенный в двойные кавычки, автоматически создается объект типа String, на который можно установить ссылку.
№41 слайд
![Строки класс String Пример](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img40.jpg)
Содержание слайда: Строки – класс String
Пример:
public class ex2 {
public static void main( String [] args ) {
String str = "123“, strSave = str;
str += "xyz";
boolean flag = str == strSave;
System.out.println(
"The value of \"str == strSave\" is "
+ flag );
}
}
Результат:
The value of "str == strSave" is false
№42 слайд
![Строки класс String String](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img41.jpg)
Содержание слайда: Строки – класс String
String содержит следующие методы для работы со строками:
String concat(String s); // или “+”
– слияние строк;
boolean equals(Object ob);
boolean equalsIgnoreCase(String s);
- сравнение строк с учетом и без учета регистра соответственно
int compareTo(String s);
int compareToIgnoreCase(String s);
- лексикографическое сравнение строк с учетом и без учета регистра, путём вычитания кодов символов вызывающей и передаваемой в метод строк
boolean contentEquals(StringBuffer ob);
-сравнение строки и содержимого объекта типа StringBuffer;
№43 слайд
![Строки класс String String](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img42.jpg)
Содержание слайда: Строки – класс String
String substring(int n);
- извлечение из строки подстроки, начиная с позиции n;
String substring(int n, int m);
- извлечение из строки подстроки длины m-n, начиная с позиции n. Нумерация символов в строке начинается с нуля;
int length();
- длина строки
№48 слайд
![Строки класс StringBuffer](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img47.jpg)
Содержание слайда: Строки – класс StringBuffer
Классы StringBuilder и StringBuffer являются “близнецами” и по своему предназначению близки к классу String, но, содержимое и размеры объектов классов StringBuilder и StringBuffer можно изменять.
Единственным отличием StringBuffer от StringBuilder является потокобезопасность StringBuffer. StringBuilder следует применять, если не существует вероятности использования объекта в конкурирующих потоках.
Объекты этих классов можно преобразовать в объект класса String методом toString() или с помощью конструктора класса String.
№51 слайд
![Строки класс StringBuffer](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img50.jpg)
Содержание слайда: Строки – класс StringBuffer
StringBuffer append( String s );
StringBuffer append( int i );
StringBuffer append( Object obj );
- добавление аргумента в конец строки
StringBuffer insert( int idx, String s );
StringBuffer insert( int idx, char c );
StringBuffer insert( int idx, Object obj );
- добавление аргумента в указанную позицию строки
№53 слайд
![Строки класс StringBuffer](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img52.jpg)
Содержание слайда: Строки – класс StringBuffer
String substring( int idx );
String substring( int idx, int idxLast );
- выделение подстроки
int indexOf( String s );
int indexOf( String s, int fromIdx );
- прямой поиск подстроки
int lastIndexOf( String s );
int lastIndexOf( String s, int fromIdx );
- обратный поиск подстроки
№54 слайд
![Строки класс StringBuffer При](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img53.jpg)
Содержание слайда: Строки – класс StringBuffer
При создании объекта StringBuffer конструктор резервирует некоторый объем памяти, что в дальнейшем позволяет быстро менять содержимое объекта, оставаясь в границах участка памяти, выделенного под объект. Размер резервируемой памяти при необходимости можно указывать в конструкторе.
Если длина строки StringBuffer после изменения превышает его размер, то ёмкость объекта автоматически увеличивается, оставляя при этом резерв для дальнейших изменений.
Если метод, вызываемый объектом StringBuffer, производит изменения в его содержимом, то это не приводит к созданию нового объекта, как в случае объекта String, а изменяет текущий объект StringBuffer.
№55 слайд
![Строки класс StringBuffer](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img54.jpg)
Содержание слайда: Строки – класс StringBuffer
Пример:
public class DemoStringBuffer {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer();
sb.append("Java");
System.out.println("строка ->" + sb);
System.out.println("длина ->" + sb.length());
System.out.println("размер ->" + sb.capacity());
System.out.println("реверс ->" + sb.reverse());
}
}
Результат:
строка ->Java
длина ->4
размер ->16
реверс ->avaJ
№56 слайд
![Строки класс StringBuffer](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img55.jpg)
Содержание слайда: Строки – класс StringBuffer
Пример:
public class RefStringBuffer {
public static void changeStr(StringBuffer s) {
s.append(" Microsystems");
}
public static void main(String[] args) {
StringBuffer str = new StringBuffer("Sun");
changeStr(str);
System.out.println(str);
}
}
Результат:
Sun Microsystems
№59 слайд
![Строки класс StringTokenizer](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img58.jpg)
Содержание слайда: Строки – класс StringTokenizer
Пример:
import java.util.StringTokenizer;
public class ex3{
public static void main( String [] args ){
String sentence = "It\'s a sentence, “+
“it can be tokenized.";
StringTokenizer st = new StringTokenizer (sentence, " ,.!?;-\n\r");
while ( st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
№62 слайд
![Интернационализация](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img61.jpg)
Содержание слайда: Интернационализация
Характеристики интернационализированного приложения:
• один и тот же код может работать в любой местности при условии добавления данных о локализации;
• приложение отображает текст на родном языке конечного пользователя;
• текстовые элементы не являются частью кода, а хранятся отдельно и запрашиваются динамически;
• поддержка новых языков не требует перекомпиляции;
• данные, зависящие от местности, такие как даты и денежные единицы, отображаются в соответствии с регионом и языком конечного пользователя;
• приложение может быть быстро и легко локализовано.
№63 слайд
![Локализация Локализация - это](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img62.jpg)
Содержание слайда: Локализация
Локализация - это процесс адаптации программного обеспечения для определенного региона или языка путем добавления специфических для данной местности компонентов и перевода текста.
Данные, зависящие от местности:
• текст;
• числа;
• денежные единицы;
• дата и время;
• изображения;
• цвета;
• звуки.
№64 слайд
![Локализация Класс](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img63.jpg)
Содержание слайда: Локализация
Класс java.util.Locale позволяет учесть особенности региональных представлений алфавита, символов и проч. Автоматически виртуальная машина использует текущие региональные установки операционной системы, но при необходимости их можно изменять. Для некоторых стран региональные параметры устанавливаются с помощью констант, например: Locale.US, Locale.FRANCE. Для других стран объект Locale нужно создавать с помощью конструктора:
Locale myLocale = new Locale("bel", "BY");
Получить доступ к текущему варианту региональных параметров можно следующим образом:
Locale current = Locale.getDefault();
№65 слайд
![Локализация Для создания](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img64.jpg)
Содержание слайда: Локализация
Для создания приложений, поддерживающих несколько языков можно использовать возможности классов java.util.ResourceBundle и Locale.
Класс ResourceBundle предназначен для работы с текстовыми файлами свойств (расширение .properties).
Чтобы выбрать определенный объект ResourceBundle, следует вызвать метод ResourceBundle.getBundle(параметры). Следующий фрагмент выбирает text объекта ResourceBundle для объекта Locale, который соответствует английскому языку, стране Канаде и платформе UNIX.
Locale currentLocale = new Locale("en", "CA", "UNIX");
ResourceBundle rb =
ResourceBundle.getBundle("text", currentLocale);
№66 слайд
![Локализация Если объект](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img65.jpg)
Содержание слайда: Локализация
Если объект ResourceBundle для заданного объекта Locale не существует, то метод getBundle() извлечет наиболее общий. В случае если общее определение файла ресурсов не задано, то метод getBundle() генерирует исключительную ситуацию MissingResourceException. Чтобы этого не произошло, необходимо обеспечить наличие базового файла ресурсов без суффиксов:
text.properties
В файлах свойств информация должна быть организована по принципу:
key1 = value1
key2 = value2
…
№67 слайд
![Локализация Пример программы](/documents_6/5ff3e9ce16338f82786ac09b1509ff59/img66.jpg)
Содержание слайда: Локализация
Пример программы:
import java.util.*;
public class IntTest {
static public void main(String args[]) {
if (args.length != 2) {
System.out.println("Format: java IntTest lang country");
System.exit(-1);
}
String language = new String(args[0]);
String country = new String(args[1]);
Locale loc = new Locale(language, country);
ResourceBundle messages =
ResourceBundle.getBundle("MessagesBundle", loc);
System.out.println(messages.getString("greeting"));
System.out.println(messages.getString("inquiry"));
System.out.println(messages.getString("farewell"));
}
}
Скачать все slide презентации Классы и интерфейсы (продолжение) одним архивом:
Похожие презентации
-
Java. Абстрактные классы и интерфейсы
-
Интерфейсы и абстрактные классы. (Лекция 2)
-
Курс «С. Программирование на языке высокого уровня». Интерфейсы. Контейнерные классы. Лекция 9
-
Абстрактные классы и интерфейсы. (Занятие 4)
-
Пакеты. Объединение взаимосвязанных классов, интерфейсов и подпакетов. (Тема 10)
-
Циклические алгоритмы. 9 класс
-
Язык разметки гипертекста HTML. 8 класс
-
Нелинейные алгоритмы. Язык программирования Паскаль. 8 класс
-
Основные конструкции языка программирования. Турбо Паскаль (тестирование). 10 -11 класс
-
Классификация структур данных. Лекция 2