Вход/Регистрация
Java: руководство для начинающих
вернуться

Шилдт Герберт

Шрифт:

Что такое бесконечный цикл? Бесконечным называется такой цикл, выполнение которого не оканчивается.

Должна ли метка, используемая вместе с оператором break, быть определена в кодовом блоке, содержащем этот оператор? Да, должна. Глава 4. Введение в классы, объекты и методы

В чем отличие класса от объекта? Класс — это абстрактное логическое описание формы и поведения объекта. А объект — это вещественный экземпляр класса.

Как определяется класс? Класс определяется с помощью ключевого слова class. В операторе class указываются код и данные, составляющие класс.

Чью собственную копию содержит каждый объект? Каждый объект класса содержит собственную копию переменных экземпляра этого класса.

Покажите, как объявить объект counter класса MyCounter, используя два отдельных оператора. MyCounter counter; counter = new MyCounter;

Как должен быть объявлен метод myMeth, принимающий два параметра а и b типа int и возвращающий значение типа double? double myMeth(int a, int b) { // ...

Как должно завершаться выполнение метода, возвращающего некоторое значение? Для завершения метода служит оператор return. Он же передает возвращаемое значение вызывающей части программы.

Каким должно быть имя конструктора? Приложение А. Ответы на вопросы для самопроверки 563 Имя конструктора должно совпадать с именем класса.

Какие действия выполняет оператор new? Оператор new выделяет память для объекта и выполняет инициализацию объекта, используя конструктор соответствующего класса.

Что такое “сборка мусора” и какие действия она выполняет? Зачем нужен метод finalize? “Сборка мусора” — это механизм удаления неиспользуемых объектов для повторного использования памяти, освобождаемой от объектов. Метод finalize вызывается для объекта непосредственно перед его удалением из памяти.

Что означает ключевое слово this? Ключевое слово this означает ссылку на объект, для которого вызывается метод. Она автоматически передается методу.

Может ли конструктор иметь один или несколько параметров? Да, может.

Если метод не возвращает значения, то как следует объявить тип этого метода? Как void. Глава 5. Дополнительные сведения

о типах данных и операторах

Покажите два способа объявления одномерного массива, состоящего из 12 элементов типа double. double х[] = new double[12]; doublet] x = new double[12];

Покажите, как инициализировать одномерный массив целочисленными значениями от 1 до 5. int х[] = { 1, 2, 3, 4, 5 };

Напишите программу, в которой массив используется для нахождения среднего арифметического десяти значений типа double. Используйте любые десять чисел. // Среднее арифметическое 10 значений типа double, class Avg { public static void main(String args[]) { double nums[] = { 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9, 10.1 }; double sum = 0; for(int i=0; i < nums.length; i++) sum += nums[i]; System.out.println("Average: " + sum / nums.length); } }

Измените программу, созданную в примере для опробования 5.1, таким образрм, чтобы она сортировала массив символьных строк. Продемонстрируйте ее работоспособность. // Демонстрация пузырьковой сортировки строк, class StrBubble { public static void main(String args[]) { String strs[] = { "this", "is", "a", "test", "of", "a", "string", "sort" }; int a, b; String t; int size; size = strs.length; // Количество сортируемых элементов // отобразить исходный массив System.out.print("Original array is:"); for (int i=0; i < size; i++) System.out.print(" " + strs[i]); System.out.println; // Пузырьковая сортировка строк. for(a=l; a < size; a++) for(b=size-l; b >= a; b—) { // поменять элементы местами при нарушении порядка их следования if(strs[b—1].compareTo(strs[b]) > 0) { t = strs[b-1]; strs[b-l] = strs[b]; strs[b] = t; } } // отобразить отсортированный массив System.out.print("Sorted array is:"); for (int i=0; i < size; i++) System.out.print(" " + strs[i]); System.out.println; } }

В чем отличие методов indexOf и lastIndexOf из класса String? Метод indexOf находит первое вхождение указанной подстроки, а метод lastlndexOf — ее последнее вхождение в текущей символьной строке.

Все символьные строки являются объектами типа String. Покажите, как вызываются методы length и charAt для строкового литерала ”1 like Java" (Мне нравится Java). Как ни странно, приведенный ниже вызов метода length вполне допустим. System.out.println("I like Java".length); В результате этого вызова на экран выводится значение 11. Аналогичным образом вызывается и метод charAt .

Расширьте класс Encode таким образом, чтобы в качестве ключа шифрования использовалась строка из восьми символов. Приложение А. Ответы на вопросы для самопроверки 565 // Видоизмененный способ шифрования и дешифрования сообщений // с помощью операции поразрядного исключающего ИЛИ. class Encode { public static void main(String args[]) { String msg = "This is a test"; String encmsg = ""; String decmsg = ""; String key = "abcdefgi"; int j; System.out.print("Original message: "); System.out.println(msg); // зашифровать сообщение j = 0; for(int i=0; i < msg.length; i++) { encmsg = encmsg + (char) (msg.charAt(i) A key.charAt(j)); j++; if(j==8) j = 0; } System.out.print("Encoded message: "); System.out.println(encmsg); // дешифровать сообщение j = 0; for(int i=0; i < msg.length; i++) { decmsg = decmsg + (char) (encmsg.charAt(i) л key.charAt(j)); j++; if(j==8) j = 0; } « System.out.print("Decoded message: "); System.out.println(decmsg); } }

  • Читать дальше
  • 1
  • ...
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: