美文网首页
面试问题整理

面试问题整理

作者: 爱言语论 | 来源:发表于2017-08-04 09:04 被阅读13次

    面试题来源:http://www.jianshu.com/p/97c279db3c34

    1.Java基本的数据类型有哪些?

    自己的回答: byte short int long boolean float double

    标准答案 http://www.cnblogs.com/123hll/p/5805040.html

    一种字符类型(char):    char:16 位,是整数类型,用单引号括起来的 1 个字符(可以是一个中文字符),使用 Unicode 码代表字符,0~2^16-1(65535) 。    注意事项:    不能为 0个字符。

    2.给一段你认为计算 2 * 8 最高效的代码

    使用移位算法:2<<3。在计算机里 2表示为 10。移位的话就是2进制在后面加0,当然比较快。楼主想想看,2进制后面+0,就是等于*2了。所以+3个0就是*8

    3.final,finally,finalize的区别?

    参考答案:http://blog.csdn.net/lichaohn/article/details/5424519

    总结:final,如果一个变量或方法参数被final修饰,就表示它只能被赋值一次;fially只能用在try/catch语句中,并且附带着一个语句块,表示这段语句最终总是被执行;finalize,它是一个方法,属于java.lang.Object类,finalize()方法是GC(garbage collector)运行机制的一部分。

    4.short s1= 1; s1 = s1 + 1; 该段代码是否有错,有的话怎么改?

       short s1= 1; s1 += 1; 该段代码是否有错,有的话怎么改?

    参考:https://zhidao.baidu.com/question/495519235579419364.html

    前面一句中,s1=s1+ 1需要进行强转,写成s1= (short)(s1 + 1)。

    后面一句没错。

    相关文章

      网友评论

          本文标题:面试问题整理

          本文链接:https://www.haomeiwen.com/subject/bfpplxtx.html