В чем разница между выполнением
public class BST<Key extends Comparable<Key>, Value> {
    public class Node<Key, Value> {
       Key key;
       Value val;
    }
}
и делая
public class BST<Key extends Comparable<Key>, Value> {
    public class Node {
       Key key;
       Value val;
    }
}
то есть. введите параметры типа для внутреннего класса? Какая реализация лучше?
