加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java的.当地的课程是否有任何理由不让它最终?

发布时间:2020-12-15 02:58:13 所属栏目:Java 来源:网络整理
导读:我有一个关于 Java中的本地类的问题(在方法中声明的类或以{}为边界的块). 有没有理由不宣布本地课程为最终?我们不能从本地类继承其他类(如果它没有在同一范围内定义),但是当我们将它声明为final时,编译器可以使代码更简单吗? 谢谢! 解决方法 人们似乎对匿
我有一个关于 Java中的本地类的问题(在方法中声明的类或以{}为边界的块).

有没有理由不宣布本地课程为最终?我们不能从本地类继承其他类(如果它没有在同一范围内定义),但是当我们将它声明为final时,编译器可以使代码更简单吗?

谢谢!

解决方法

人们似乎对匿名类和本地类有点困惑.这是一个本地课程:
public void m() {
   class MyClass{}
   MyClass cl = new MyClass();
}

你可以声明MyClass final,但它实际上可以从它继承,因此Java中的任何其他地方都可以声明它是最终的以避免这种情况:

public void m() {
   class MyClass{}
   MyClass cl = new MyClass();
   class MyOtherClass extends MyClass{}
   MyOtherClass cl2 = new MyOtherClass();
}

据我所知,匿名课程不被视为最终课程.但是,从语法上讲,没有办法从它们继承,所以它需要一个强大的类文件hack才能这样做.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读