Non-static method cannot be referenced from a static context ,java: 不兼容的类型: 推断类型不符合上限 的解决办法

问题概述

在项目中使用到的JDK是1.8的版本,项目开发过程中遇到的一个Java类型推断的问题 :“ Non-static method cannot be referenced from a static context ” ,“ Error:(89, 45) java: 不兼容的类型: 推断类型不符合上限 ” 

如下图:

Non-static method cannot be referenced from a static context ,java: 不兼容的类型: 推断类型不符合上限 的解决办法_第1张图片

 

 

解决办法

从上面的错误信息中看出,出现这个类型推断问题是由于前后类型不一致导致的,

所以在使用JDK1.8进行Stream流式写法的时候,千万要注意前后类型一致,注意层叠关系类型变化,

在上面的错误代码中发现,在map方法前是Object类型,但是在sorted方法前,类型已经改变了,即为String类型,如果此时还用Object类型的话,JDK就会编译报错,原因是类型改变,此时的类型为String类型了,如下图:

Non-static method cannot be referenced from a static context ,java: 不兼容的类型: 推断类型不符合上限 的解决办法_第2张图片

所以在进行JDK1.8的Stream编码的时候,千万注意类型的变化!!!

 

 

 

 

 

 

OpenJDK Issues : https://bugs.openjdk.java.net/browse/JDK-8190548


 好了,关于 Non-static method cannot be referenced from a static context ,java: 不兼容的类型: 推断类型不符合上限 的解决办法  就写到这儿了,如果还有什么疑问或遇到什么问题欢迎扫码提问,也可以给我留言哦,我会一一详细的解答的。 
歇后语:“ 共同学习,共同进步 ”,也希望大家多多关注CSND的IT社区。


作       者: 华    仔
联系作者: [email protected]
来        源: CSDN (Chinese Software Developer Network)
原        文: https://blog.csdn.net/Hello_World_QWP/article/details/116156255
版权声明: 本文为博主原创文章,请在转载时务必注明博文出处!

你可能感兴趣的:(Java,JDK-1.8,新特性,jdk1.8,Java,Spring,Stream,BUG)