开发者社区> 问答> 正文

java.lang.illegalaccessexception的发生因为什么?-java报错

java.lang.illegalaccessexception的发生因为什么?

展开
收起
montos 2020-05-25 22:52:52 1171 0
2 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    这种错误一般都是因为没有访问权限导致的,问题多出现在反射的使用中,反射中调用私有方法或者私有属性。我们可以使用他们继承父类(AccessibleObject)中的setAccessible()方法,来设置或取消访问检查,以达到访问私有对象的目的。java的四种访问权限修饰符:public是公共的,被public所修饰的成员可以在任何类中都能被访问到。protected是受保护的,受到该类所在的包所保护。default(默认,缺省的),也被称为friendly。private,private是私有的,即只能在当前类中被访问到,它的作用域最小。在编写代码的时候要主要访问权限的问题。

    2020-05-26 10:02:17
    赞同 展开评论 打赏
  • 这个异常的解释是"没有访问权限",当应用程序要调用一个类,但当前的方法即没有对该类的访问权限便会出现这个异常。对程序中用了package的情况下要注意这个异常。

    2020-05-26 09:47:15
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载