Как сделать неуниверсальный класс, расширяющийся от универсального суперкласса - PullRequest
0 голосов
/ 26 декабря 2018

Я готов добавить строки в список, который может содержать только строки.После вызова add(String s) я хотел бы изменить строку (например, добавить дату) и затем сохранить измененную строку в списке.Тем не менее, необходимо, чтобы другие типы данных не могли быть добавлены.

Моя первая идея заключается в расширении из простого ArrayList.К сожалению, мне пришлось бы изменить около 7-12 функций.

Какими будут ваши предложения?

Спасибо

Ответы [ 2 ]

0 голосов
/ 05 июля 2019

Лучший вариант, который мне предложили, это написать класс, который ничего не расширяет, но java.lang.Object, а затем добавить приватный ArrayList.

public class StringList {
   private ArrayList<String> list;
}

Этот метод затем можно легко расширить с помощьюдобавить функцию или что-нибудь еще.

0 голосов
/ 26 декабря 2018

Необходимо указать, что при расширении списка массивов, который он предоставляет String в качестве универсального типа, и не добавляйте универсальный тип в новый класс.

public class StringList extends ArrayList<String> {...}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...