JAVA. ЗАДАЧА 20.02.05. СЕРИАЛИЗАЦИЯ STATIC.

package com.javarush.test.level20.lesson02.task05; import java.io.*; /* И еще раз о синхронизации Разберитесь почему не работает метод main() Реализуйте логику записи в файл и чтения из файла для класса Object Метод load должен инициализировать объект данными из файла Метод main реализован только для вас и не участвует в тестировании */ public class Solution { public static void [...]

By | Февраль 24th, 2017|Categories: Уровень 20|Tags: , |0 Comments

JAVA. ЗАДАЧА 20.10.02. СЕРИАЛИЗАЦИЯ ВЛОЖЕННЫХ КЛАССОВ. НИЧЕГО НЕ ПОНЯЛ, СПИСАЛ.

package com.javarush.test.level20.lesson10.home02; import java.io.IOException; import java.io.ObjectInputStream; import java.io.Serializable; /* Десериализация На вход подается поток, в который записан сериализованный объект класса A либо класса B. Десериализуйте объект в методе getOriginalObject предварительно определив, какого именно типа там объект. Реализуйте интерфейс Serializable где необходимо. */ public class Solution implements Serializable { public A getOriginalObject(ObjectInputStream objectStream) { Object object [...]

By | Февраль 23rd, 2017|Categories: Уровень 20|Tags: |0 Comments

JAVA. ЗАДАЧА 20.07.05. СЕРИАЛИЗАЦИЯ. THREAD.

package com.javarush.test.level20.lesson07.task05; import java.io.*; /* Переопределение сериализации Сделайте так, чтобы после десериализации нить runner продолжила работать. Ключевые слова объекта runner менять нельзя. Hint/Подсказка: Конструктор не вызывается при сериализации, только инициализируются все поля. */ public class Solution implements Serializable, Runnable { transient private Thread runner; private int speed; public Solution(int speed) { this.speed = speed; startThread(); [...]

By | Февраль 23rd, 2017|Categories: Уровень 20|Tags: , |0 Comments

JAVA. ЗАДАЧА 20.10.06. ЗАПРЕТ СЕРИАЛИЗАЦИИ.

package com.javarush.test.level20.lesson10.home06; import java.io.*; /* Запрет сериализации Запретите сериализацию класса SubSolution используя NotSerializableException. Сигнатуры классов менять нельзя */ public class Solution implements Serializable { public static class SubSolution extends Solution { private void writeObject(ObjectOutputStream out) throws IOException { throw new NotSerializableException(); } private void readObject(ObjectInputStream in) throws IOException { throw new NotSerializableException(); } } } [...]

By | Февраль 15th, 2017|Categories: Уровень 20|Tags: , |0 Comments

JAVA. ЗАДАЧА 20.10.03+ КРОССВОРД.

МОЙ ВАРИАНТ: package com.javarush.test.level20.lesson10.bonus03; import java.util.ArrayList; import java.util.List; /* Кроссворд 1. Дан двумерный массив, который содержит буквы английского алфавита в нижнем регистре. 2. Метод detectAllWords должен найти все слова из words в массиве crossword. 3. Элемент(startX, startY) должен соответствовать первой букве слова, элемент(endX, endY) - последней. text - это само слово, располагается между начальным и [...]

By | Февраль 13th, 2017|Categories: Уровень 20|Tags: , |0 Comments

JAVA. ЗАДАЧА 20.10.02+. МАТРИЦА. ПРЯМОУГОЛЬНИКИ.

package com.javarush.test.level20.lesson10.bonus02; /* Алгоритмы-прямоугольники 1. Дан двумерный массив N*N, который содержит несколько прямоугольников. 2. Различные прямоугольники не соприкасаются и не накладываются. 3. Внутри прямоугольник весь заполнен 1. 4. В массиве: 4.1) a[i, j] = 1, если элемент (i, j) принадлежит какому-либо прямоугольнику 4.2) a[i, j] = 0, в противном случае 5. getRectangleCount должен возвращать количество [...]

By | Январь 19th, 2017|Categories: Уровень 20|Tags: |0 Comments

JAVA. ЗАДАЧА 20.10.05. СЕРИАЛИЗАЦИЯ.

package com.javarush.test.level20.lesson10.home05; import java.io.PrintStream; import java.io.Serializable; import java.util.logging.Logger; /* Сериализуйте Person Сериализуйте класс Person стандартным способом. При необходимости поставьте полям модификатор transient. */ public class Solution { public static class Person implements Serializable { String firstName; String lastName; transient String fullName; transient final String greetingString; String country; Sex sex; transient PrintStream outputStream; transient Logger logger; [...]

By | Январь 18th, 2017|Categories: Уровень 20|Tags: , |0 Comments

JAVA. ЗАДАЧА 20.10.01. СЕРИАЛИЗАЦИЯ.

package com.javarush.test.level20.lesson10.home01; import java.io.Serializable; /* Минимум изменений Используя минимум изменений кода сделайте так, чтобы сериализация класса C стала возможной. */ public class Solution { public class A implements Serializable { String name = "A"; public A(String name) { this.name += name; } @Override public String toString() { return name; } } public class B extends [...]

By | Январь 18th, 2017|Categories: Уровень 20|Tags: |0 Comments

JAVA. ЗАДАЧА 20.07.04. SERIALIZABLE. TRANSIENT. ASSERT.

package com.javarush.test.level20.lesson07.task04; import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; /* Serializable Solution Сериализуйте класс Solution. Подумайте, какие поля не нужно сериализовать, пометить ненужные поля — transient. Объект всегда должен содержать актуальные итоговые данные. Метод main не участвует в тестировании. Написать код проверки самостоятельно в методе main: 1) создать файл, открыть поток на чтение (input stream) и [...]

By | Январь 15th, 2017|Categories: Уровень 20|Tags: , , |0 Comments

JAVA. ЗАДАЧА 20.07.03. EXTERNALIZABLE.

package com.javarush.test.level20.lesson07.task03; import java.io.*; import java.util.ArrayList; import java.util.List; /* Externalizable Person Класс Person должен сериализоваться с помощью интерфейса Externalizable. Подумайте, какие поля не нужно сериализовать. Исправьте ошибку сериализации. Сигнатуры методов менять нельзя. */ public class Solution { public static void main(String[] args) throws IOException, ClassNotFoundException { ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("20-07-03.txt")); Person person = [...]

By | Январь 14th, 2017|Categories: Уровень 20|Tags: , |0 Comments