You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Andrei Sereda (Jira)" <ji...@apache.org> on 2020/01/15 19:49:00 UTC

[jira] [Commented] (CALCITE-3735) In ImmutableBeans, allow interfaces to have default methods

    [ https://issues.apache.org/jira/browse/CALCITE-3735?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17016270#comment-17016270 ] 

Andrei Sereda commented on CALCITE-3735:
----------------------------------------

Yes, seems like calling interface default methods reflectively in not straight-forward in java. Worst, different code for JDK 8, 9-10, 11. This is one of the advantages of codegen-ed immutable classes.

Probably you already saw [Correct Reflective Access to Interface Default Methods in Java 8, 9, 10|https://blog.jooq.org/2018/03/28/correct-reflective-access-to-interface-default-methods-in-java-8-9-10/] post. 

> In ImmutableBeans, allow interfaces to have default methods
> -----------------------------------------------------------
>
>                 Key: CALCITE-3735
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3735
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Julian Hyde
>            Priority: Major
>
> In ImmutableBeans, allow interfaces to have default methods.
> (These are invoked in the usual way by the client. The mechanics are a bit tricky because they involve method handles, and the APIs are different in JDK 8 than later JDKs.)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)