JavaRush /Курсы /Java Core /Бонусное задание | 10 лекция | 10 уровень

Бонусное задание | 10 лекция | 10 уровень

Java Core
10 уровень , 10 лекция
Открыта

— Привет, Амиго! Что-то ты расслабился! Вот твои задания. Если вдруг возникнут трудности, то обращайся к коллегам, они точно помогут.

6
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Минимум изменений
Как же всё-таки здорово, когда усилия оптимизированы! Только вот процесс оптимизации не всегда простой. Давайте потренируемся в нём, а заодно и сериализацию подучим вам нужно сделать возможной сериализацию некоего класса при минимальных изменениях кода. Вперёд!
12
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Десериализация
На вход подается поток, в который записан сериализованный объект класса A либо класса B. Десериализуйте объект в методе getOriginalObject так, чтобы в случае возникновения исключения было выведено сообщение на экран и возвращен null. Реализуйте интерфейс Serializable там, где необходимо.
20
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Найти ошибки
Почему-то при сериализации/десериализации объекта класса B возникают ошибки. Найди проблему и исправь ее. Класс A не должен реализовывать интерфейсы Serializable и Externalizable. В сигнатуре класса В ошибки нет :). В методе main ошибок нет.
6
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Исправить ошибку. Сериализация
После десериализации объекта класса Solution обнаружили, что данных в словаре [m] нет :( Исправить 1 ошибку.
6
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Сериализация человека
И появился у нас человек. Класс Person, то бишь. И пришла пора его сериализовывать. И делать это нужно вам. Самым естественным образом. Если нужно, добавьте к некоторым полям модификатор transient. Но только если нужно.
6
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Сериализация под запретом
Давайте поговорим про исключения, а именно — NotSerializableException. Именно с помощью этого длинного слова и соответствующей конструкции вам предстоит запретить сериализацию класса SubSolution. Только сигнатуры классов не меняйте, пожалуйста.
20
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Переопределение сериализации в потоке
Вы уже привыкли к тому, что в мире есть масса неправильного и глючного кода? Вот вам ещё немного. Здесь сериализация и десериализация Solution не работает. Вам предстоит удовольствие исправить ошибки, не меняя сигнатуры методов и класса.
12
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Делаем правильный вывод
У нас есть код. Но всё в нем не так… Нам нужно кое-что поменять. А именно — расставить обращения к методам суперкласса и модификаторы доступа так, чтобы получить вывод на экран определённого характера. Какого именно? Узнаете из задачи.
12
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Знакомство с графами
Графья нынче не те пошли. Вот эти, плоские, с циклами и петлями. Благо хоть, ориентированные, а то совсем бы худо пришлось… И что нам с ними делать? А ничего. Просто изучать и надеяться на лучшее.

— Ты уже всё сделал? Вот тебе ещё и бонусные задания повышенной сложности:

20
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Алгоритмы-числа
Ура, задачи на алгоритмы! Их очень любят резиденты планеты Линейный Хаос. И вы должны любить, по крайней мере, до того момента, как пройдёте пару-тройку собеседований. Итак, у вас есть число из некоторого количества чисел. Нужно найти все числа меньше N, которые удовлетворили бы некоторому критерию (о нём узнаете в самой задаче!).
12
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Алгоритмы-прямоугольники
И снова задача на алгоритмы, теперь о массивах, которые содержат прямоугольники. В этот раз всё небанально, так что, возможно, найдётся упорядоченный изоморф, который не сможет решить задачку о возврате количества прямоугольников. А ведь эти ребята только тем и занимаются, что упорядочиванием и сравнением.
20
Задача
Java Core, 10 уровень, 10 лекция
Недоступна
Кроссворд
Нет, нам не придётся решать кроссворды. Нам нужно решить нетривиальную задачку про кроссворды. Есть двумерный массив, а в нём — слова, слова, слова. По горизонтали, по вертикали, по диагонали… Нужно найти все слова в массиве.
Комментарии (328)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Anonymous #3585174 Уровень 33
19 сентября 2025
Like
nastya_zhadan Уровень 66
14 сентября 2025
Эти задачи меня добили
I'll kick them all Уровень 5
17 августа 2025
01.08.2025 - 16.08.2025 =)
I'll kick them all Уровень 5
16 августа 2025
Офігенні завдання на всю суботу. Дякую.
Victor Уровень 37
30 июля 2025
Задача "Алгоритмы-прямоугольники" Не могу приступить к заданию, вообще не понимаю о чём идёт речь. 1. Дан двумерный массив N*N, который содержит несколько прямоугольников. - То есть в каждой ячейке этого массива содержатся координаты вершин прямоугольника в виде двумерного массива вида {x1, y1 }, {x2, y2 }, {x3, y3 }, {x4, y4 }, так что ли? 2. Это вроде понятно - ну не соприкасаются и не соприкасаются - ничего страшного 3. Внутри весь прямоугольник заполнен 1 - вообще не понятно. Прямоугольник - геометрическая фигура - как он может быть вообще чем-то заполнен? может заштрихован? заштрихован единицами - билеберда какая-то. 4.1 если элемент (i, j) принадлежит какому-либо прямоугольнику. Если речь идёт о массиве из пункта 1, то там все элементы - двумерные массивы координат и соответственно все принадлежат какому-либо прямоугольнику. Кто-нибудь может мне разъяснить условие этой задачи популярно - на пальцах. plz
Valery Sannikov Уровень 33
6 июня 2025
в чем смысл этих задач на темы не связанные с сериализацией?
golubtsoff Уровень 32
1 июня 2025
В задаче "Десериализация" вот это условие непонятно: "5. Метод getOriginalObject должен возвращать null, если при попытке десериализации не был получен объект типа A." Но ведь по условию "На вход подается поток, в который записан сериализованный объект класса A либо класса B.". В ответе используется приведение типов:

return (Solution.A) objectStream.readObject();
Разумеется, даже если на входе будет объект типа B, он преобразуется к объекту типа А. Исключение не возникнет и метод getOriginalObject вернёт объект А, а не null. Очевидно, что ответ неправильный, хоть он и проходит все тесты. В методе нужно выполнять проверку на соответствие классов:

A a = (A) objectStream.readObject();
return a.getClass() == A.class ? a : null;
Кто хочет проверить сам в main() решение, не забудьте пометить класс Solution, что он реализует Serializable, а то сериализация работать не будет.
Никита QA Уровень 34
15 мая 2025
Интересный курс и задачки, идем дальше, 15.05.2025.
Nikolay-Shirokov Уровень 1
29 апреля 2025
хм) забавно. материи с курса по синтаксису как раз хватило на весь курс по "ядру"
Jahan Уровень 44
23 января 2025
Все шикарно !!!