JavaRush /Курсы /Java Collections /Вопросы к собеседованию 5 уровень

Вопросы к собеседованию 5 уровень

Java Collections
5 уровень , 14 лекция
Открыта

— Привет, Амиго!

  Вопросы к собеседованиям
1 Какие системы контроля версий вы знаете?
2 Чем отличаются SVN и Git?
3 Что такое GitHub? У вас есть проекты на GitHub?
4 Зачем нужны системы контроля версий?
5 Что такое generic? Как они реализованы в Java?
6 Что такое стирание типов?
7 Расскажите про extends и super в Generic’ах?
8 Что такое wildcard?
9 Как использовать wildcard?
10 В чем отличие ArrayList и ArrayList<?>
Комментарии (17)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Anonymous #2135740 Уровень 41
2 ноября 2024
смысл писать ответы в комментах) это задание для вас - в целях развития умения искать информацию
Fl1s Уровень 51
15 февраля 2024
1. Git и SVN. 2. В Git вы можете полностью проверить состояние проекта до публикации, в то время как в SVN вы не можете даже быть уверены в его состоянии до и после публикации коммита. 3. GitHub - крупнейший веб-сервис для хостинга проектов и их совместной разработки. Основан на системе контроля версий Git; да, таковые имеются. 4. Нужны как-раз таки для контроля версий - отслеживания их изменений, путешествия во времени, многозадачностью команды, и простого удобства. 5. Generics — это параметризованные типы. С их помощью можно объявлять классы, интерфейсы и методы, где тип данных указан в виде параметра. Пример:

class MyClass<T>{
  T obj;
  public MyClass(T obj){
    this.obj = obj;
  }
}
class MyClass<T>
6. Стирание типа — идиома программирования, один из способов корректно и единообразно обрабатывать данные разного типа. 7. <extends T> - подходит всё что наследуется от T, <super T> - подходит всё что от T 8. Wildcard — это дженерик вида <?>, что означает, что тип может быть чем угодно. Используется, например, в коллекциях, где для всех коллекций базовым типом является Сollection<?>. 9.

 List<?> numList = new ArrayList<String>();
10.Запись вида ArrayList называется raw type. Она эквивалентна записи вида ArrayList<T> и используется для обратной совместимости, т.к. до Java 1.5 не было дженерик коллекций. По возможности такой формы записи следует избегать.
Евгений Т. Уровень 39
9 декабря 2022
9 вопрос вообще о чем? Это как описание к задачам некоторым вообще не понятно чего от тебя хотят. Разработчики конкретизируйте пожалуйста вопрос или давайте в следующих лекция разъяснения что же вы ожидаете услышать в ответ на такие вопросы.
25 сентября 2021
Вот блин язык как будто съела ...
Уровень 1
17 января 2021
для тех кому лень крутить вниз ответы
Dregid Уровень 40
20 ноября 2022
Что мешает нажать кнопку популярные над комментариями и перейти по нужной ссылке? И "крутить" ничего не надо. Если вам нужно пофармить лайки на думерах и старее, так и скажите. Хотя скорее и среди миллениалов и зумеров найдутся те кто не понимает что можно пользоваться фильтром.
Уровень 1
26 декабря 2022
ну наверное то, что ее раньше не было)
Dregid Уровень 40
27 декабря 2022
Если действительно ее не было (что странно), то приношу извинения
Aslancheek Уровень 15
25 сентября 2023
Алексей Уровень 41
9 января 2021
Добавлю свои 5 копеек про wildcard. С англ. переводится как подстановочный знак. Т.е. конструкция <?> является wildcard типом. Ссылка oracle Означает, что вместо ? можно подставить любой объект. Подстановочные знаки бывают ограниченными (bounded): - Upper Bounded Wildcards - ограничение сверху c помощью extends (берем только те типы, что ниже по иерархии наследования). - Lower Bounded Wildcards - ограничение снизу c помощью super (берем только те типы, что выше по иерархии наследования). И еще, <?> означает вообще любой объект. А <T> означает конкретный объект T (Можно подставить любую букву).
Елена Попова Уровень 41
21 декабря 2020
1.Системы контроля версий (СКВ, VCS, Version Control Systems) позволяют разработчикам сохранять все изменения, внесённые в код. Поэтому они могут просто откатить код до рабочего состояния вместо того, чтобы тратить часы на поиски маленькой ошибки или ошибок, ломающих весь код. СКВ также дают возможность нескольким разработчикам работать над одним проектом и сохранять внесённые изменения, чтобы убедиться, что все могут следить за тем, над чем они работают.(Mercurial svn, GIT) 2. GIT распределяется, а SVN - нет. Другими словами, если есть несколько разработчиков работающих с репозиторием у каждого на локальной машине будет ПОЛНАЯ копия этого репозитория. Разумеется есть и где-то и центральная машина, с которой можно клонировать репозиторий. Это напоминает SVN. Основной плюс в том, что если вдруг у вас нет доступа к интернету, сохраняется возможность работать с репозиторием. Потом только один раз сделать синхронизацию и все остальные разработчики получат поолную историю. GIT сохраняет метаданные изменений, а SVN целые файлы. Это экономит место и время. Система создания branches, versions и прочее в GIT и SVN отличаются значительно. В GIT проще переключатся с ветки на ветку, делать merge между ними. 3. GitHub — крупнейший[7] веб-сервис для хостинга IT-проектов и их совместной разработки. 4. система контроля версий (СКВ) — это система, регистрирующая изменения в одном или нескольких файлах с тем, чтобы в дальнейшем была возможность вернуться к определённым старым версиям этих файлов. 5. Обобщения - это параметризованные типы. С их помощью можно объявлять классы, интерфейсы и методы, где тип данных указан в виде параметра. Обобщения добавили в язык безопасность типов
30 ноября 2020
Про 10 вопрос не до конца понял, может кто пояснить, зачем wildcard <?> вообще нужен. Прочел https://docs.oracle.com/javase/tutorial/java/generics/unboundedWildcards.html и все равно не вижу смысла в этом <?>, т.к. в примерах по ссылке все бы работало и с raw types
Евгения Уровень 47
30 июля 2022
"It's important to note that List<Object> and List<?> are not the same. You can insert an Object, or any subtype of Object, into a List<Object>. But you can only insert null into a List<?>" из статьи по ссылке. С wildcard кое-что может вообще не работать
Vorlock Уровень 31
27 января 2020
https://www.youtube.com/watch?v=FbkyRImEEfQ
Alex P Уровень 41
5 марта 2019
I'm sooooooo lonely =(((((