Java generic interface and java generic interface

Source: Internet
Author: User

Java generic interface and java generic interface

Recently, a third-party class library has encountered a wildcard problem. I was a little confused, so I recorded it

public interface QueryApi<T extends QueryApi<?,?>,U>
public abstract class  QueryApiImpl<U> implements QueryApi<QueryApiImpl<?>,U> 

public interface TaskQueryApi<T extends OrderFlow>  extends QueryApi<TaskQueryApi<?>, T> 
Public class TaskQueryApiImpl <T extends OrderFlow> extends QueryApiImpl <T> implements TaskQueryApi <T>

Above, compilation Error
The problem is that public interface TaskQueryApi <T extends OrderFlow> extends QueryApi <TaskQueryApi <?>, T> this sentence.
Change
Public interface TaskQueryApi <T extends OrderFlow> extends QueryApi <QueryApiImpl <?>, T> then it is normal.

Cause Analysis: TaskQueryApi implements QueryApi. The first generic parameter is TaskQueryApi.
QueryApiImpl also implements QueryApi. The first generic parameter is QueryApiImpl.
Therefore, when TaskQueryApiImpl implements TaskQueryApi, it also integrates QueryApiImpl. In this way, there are two upstream generic parameters, but the generic instance types are not the same, resulting in an error.
Of course, TaskQueryApi does not integrate QueryApi. In this way, there is a QueryApi method in the implementation class, but there is no interface definition.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.