Как исправить непроверенный тип приведения

У меня проблемы с неконтролируемым кастингом. Я знаю, что это происходит потому, что T является Object но не каждый Object это T, Мой вопрос, как бы я это исправить, чтобы реализовать T в ArrayList<T> без подавления предупреждений?

public class AdjMatrix <T extends Object> implements Blah<T>
{
    public T[] vertex;

    public AdjMatrix() 
    {
        this.vertex = (T[])(new Object[RANDOM_NUMBER]);             
    }

    public ArrayList<T> neighbours(T vertLabel) 
    {
        ArrayList<T> neighbours = new ArrayList<T>();

        neighbours.add(vertex[SOME_NUMBER]);

        return neighbours;
    }
}

Спасибо за помощь!

1 ответ

Вы можете ввести приведение к экземпляру любого класса, если вы знаете тип этого класса. Затем вы можете создать экземпляр класса следующим образом: clazz.cast(object)

Другие вопросы по тегам