ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

今日错题(10.6)

2021-10-06 23:58:15  阅读:169  来源: 互联网

标签:变量 10.6 接口 public 错题 修饰 今日 声明 final


以下程序会输出什么:

public class Passer{
         static final int X=5;
         public static void main(String [] args){
               new Passer().go(X);
               System.out.print(X);
         }
         void go(int X){
              System.out.print(X++);
         }
}

55

56

65

66

这里我选了一个56,很简单一题,别忘记了final修饰的变量是无法再被修改的!!至于第一个5,因为x++是先赋值再进行运算。

以下对接口描述不正确的是( )

接口没有提供构造方法

接口允许多继承

接口中的属性默认使用public、static、final修饰

接口中的方法默认使用public、static、abstract修饰

答案是D,我选了一个B,接口是允许多继承的!!他不同于其他类,他可以这样子implement a,b,c。记住一句话,单继承多实现,先继承后实现。至于D记住接口中的方法是默认被public abstract修饰即可。

下面关于final变量描述错误的是:

final修饰的原生类型变量可以安全的在多线程环境下进行共享,不需要额外的同步开销

接口中声明的所有变量本身是final的

JVM和Java应用不会缓存final变量

可以向声明为final的集合对象增加,删除或者改变内容

答案是D

做到这里就不得不来复习一下final关键字了,感觉在这里踩过好多坑。

1.可以声明成员变量、方法、类以及本地变量。一旦你将引用声明作final,你将不能改变这个引用。

2.(静态绑定)final也可以声明方法。方法前面加上final关键字,代表这个方法不可以被子类的方法重写。final方法比非final方法要快,因为在编译的时候已经静态绑定了,不需要在运行时再动态绑定。

3.使用final来修饰的类不能被继承。

4.接口中声明的所有变量本身是final的

5.没有在声明时初始化final变量的称为空白final变量(blank final variable),它们必须在构造器中初始化,或者调用this()初始化

6.对于集合对象声明为final指的是引用不能被更改,但是你可以向其中增加,删除或者改变内容

7.final关键字提高了性能。JVM和Java应用都会缓存final变量。

8.final变量可以安全的在多线程环境下进行共享,而不需要额外的同步开销。

标签:变量,10.6,接口,public,错题,修饰,今日,声明,final
来源: https://blog.csdn.net/qq_51554527/article/details/120631312

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有