How does Java generics support polymorphism?
By enabling classes to be parameterized with multiple types
By allowing methods to operate on objects of various types while providing compile-time type safety
By using wildcard characters to specify method parameters
By allowing the creation of classes that can work with any data type