I'm following a tutorial by Oracle to create a TableView in JavaFX. In this screenshot, I've copied and pasted the code and I get several errors, which aren't mentioned in the tutorial anywhere.
The warning on the TableView says:
TableView is a raw type. References to generic type TableView<S> should be parameterized
the warning on the TableColumn says:
TableColumn is a raw type. References to generic type TableColumn<S,T> should be parameterized
and the warning on the addAll method says:
Type safety: The method addAll(Object...) belongs to the raw type ObservableList. References to generic type ObservableList<E> should be parameterized
I looked at the documentation and saw that they do require parameters (which is confusing because the tutorial didn't mention this) but I don't understand what they are supposed to be. If I do
TableView<String> table = new TableView<>();
and
TableColumn<String, String> tableCol = new TableColumn<>(...);
I still get a warning on the addAll method, which says:
Type safety: A generic array of TableColumn<String,?> is created for a varargs parameter
I really can't understand what is expected for the type parameters. I know I can suppress the warnings, but that seems like bad practice. What am I supposed to do instead?

TableViewis normally someObject