I have a class named Myclass, which is just a wrapper of a HashMap, I want to be able to store the possible key/value pair listed below: KEY_A -> MyClassA KEY_LIST_B -> List<MyClassB> KEY_C -> List<MyClassC> Here is my code : How can I design (signature of these methods) the get() and set…
Tag: generics
Why java allows “var” to declare generic variable without specifying type, leading to runtime issue? [closed]
Closed. This question needs details or clarity. It is not currently accepting answers. Want to improve this question? Add details and clarify the problem by editing this post. Closed 28 days ago. Improve this question Hi: this code get compiled: But with runtime issue. The list local variable is of ArrayList …
Workarounds to implement interface including , with X[] type parameter
Let’s say we have some interface like this: I’m using Foo a lot in my codebase, but I wish to add the TIn extends T to make it more flexible, to eg have a Foo<Map<X>> able to encode a HashMap<X> or a TreeMap<X>. This works really well – until I tried to implement Foo&…
Upper bounded wildcard as a Map Value – how to provide a default Value with getOrDefault()
I have the following map Sometimes there is a List and sometimes there is a Set as a value. Now I’d like to get value, but there is a problem, it does not compile. I know I can do something like this: But I want to understand how getOrDefault() method is supposed to work with wild-card generics. Answer …
Unable to specialize method templatization using the subclassing approach
For DynamicMessage I wanted to have a different handling so I tried But it gives the compilation error ‘addMessageToResult(Message, Descriptor, Builder)’ in ‘com.google.cloud.verticals.telco.taap.dataflow.dataingestion.common.parsers.CSVParserDynamicMessage’ clashes with ‘addMess…
Using an Interface as a super type for Enum classes – problem with accessing Enum-specific methods
I’ve been attempting to implement an interface in my enums in order to have rules for a simulation I’m making. I am trying to access enum-methods such as values() and ordinal() (on objects). However, even with upper-bounding my classes with my interface name, I still cannot access these methods wi…
Unable to override generic method in java
I am getting errors like Main.java:12: error: TextMessage is not abstract and does not override abstract method setContent(T) in Message class TextMessage extends Message { ^ where T is a type-variable: T extends Object declared in method setContent(T) 1 error Answer Your method declaration: hides the type pa…
How to declare a generic method in Java?
I am learning Java generics and am confused by the method signature. It seems as if people are using it differently in every example I come across. For example, on the site Baeldung, this is the example they give: And then they go on to say this: The <T> in the method signature implies that the method w…
How to use generics for type safety while using `removeRange` method of ArrayList
Since the method – removeRange(int startIndex, int ) is protected, we need to use it in a class extending ArrayList. Below is my code – Output – Now to use type safety I need to write – MyClass<String> extends ArrayList<String> but doing so gives error in main method of Str…
why is this still need to cast in java?
error right DefaultLiteProcessScope extends DefaultLiteProcessScope,but it is till need to be cast?why? Answer What you are doing here is wrong. You want to return some subtype of DefaultLiteProcessScope from the build method. However, you hard code the return type like this: new DefaultLiteProcessScope(). No…