Java Method override with the parameter "Class<? extends Object>"

java

Solution

I think you are a bit confused. Are you sure you are not trying to say:

public abstract class CustomAdapter<T extends Object> {
    public abstract Boolean addItem(T aObject);
}

public class RainAdapter extends CustomAdapter<Rain> {
    @Override
    public Boolean addItem(Rain aRainInfo) {
        // do something
        return true;
    }
}

In my interpretation of your class structure, you are trying to make a generic `addItem` method, so passing around the actual class object is of no use.

Problem

I got a problem with java when i try to override a method,my code is following: ``` public abstract class CustomAdapter{ public abstract Boolean addItem(Class<? extends Object> aObject); } public class RainAdapter extends CustomAdapter { @Override public Boolean addItem(ClassOfRain aRainInfo) { // do something return true; } } ``` Can I declare the the "Class" to "ClassOfRain"? If yes,how to do? Thanks for your reading!

Original source