Java Collections асбтрактный тип List? Добрый день. Помогите пожалуйста разобраться с базовым вопросом. В коллекциях Java есть асбтрактный класс List, от которого наследуются основные структуры данных. Во всех источниках которые мне попадались, говориться что нельзя создать прямой экземпляр класса List. Однако при работе с кодом я встречаю конструкции типа public List myMethod(){ return List} И такая запись вызывает у меня ощущение что я чего то недопнимаю. Что за зверь такой List? И можем ли мы создавать экземпляры этого класса? Как этим управлять?
Да, вы правы, List является абстрактным интерфейсом в Java, и нельзя создать его экземпляр напрямую с помощью конструктора. Однако, вы можете создать экземпляры классов, которые реализуют этот интерфейс, такие как ArrayList, LinkedList, и другие.
В вашем примере public List myMethod(){ return List}, вы возвращаете экземпляр класса, который реализует интерфейс List. Например, вы можете вернуть объект класса ArrayList, который является реализацией интерфейса List. При этом возвращать "чистый" List не имеет смысла, так как он абстрактный и не имеет реализации методов.
Таким образом, вы можете создавать экземпляры классов, реализующих интерфейс List, и использовать их в своем коде. Например:
List myList = new ArrayList<>();
Надеюсь, это поможет вам лучше понять, как работать с интерфейсом List в Java. Если у вас есть дополнительные вопросы, не стесняйтесь задавать.
Добрый день!
Да, вы правы, List является абстрактным интерфейсом в Java, и нельзя создать его экземпляр напрямую с помощью конструктора. Однако, вы можете создать экземпляры классов, которые реализуют этот интерфейс, такие как ArrayList, LinkedList, и другие.
В вашем примере public List myMethod(){ return List}, вы возвращаете экземпляр класса, который реализует интерфейс List. Например, вы можете вернуть объект класса ArrayList, который является реализацией интерфейса List. При этом возвращать "чистый" List не имеет смысла, так как он абстрактный и не имеет реализации методов.
Таким образом, вы можете создавать экземпляры классов, реализующих интерфейс List, и использовать их в своем коде. Например:
List myList = new ArrayList<>();
Надеюсь, это поможет вам лучше понять, как работать с интерфейсом List в Java. Если у вас есть дополнительные вопросы, не стесняйтесь задавать.