400-616-5551

您所在位置: 首页> 学习课程> Java基础学习:Java学习中常见问题

Java基础学习:Java学习中常见问题

发布百知教育 来源:学习课程 2020-04-01

1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?


  答:可以包括 但公共类只能有一个、且与源文件名相同


  2、Java有没有goto?


  答:有、但是是作为保留字存在的。


  3、说说&和&&的区别。


  答:在java中,这两个符号都属于逻辑运算符与的操作。但&&表示的是短路运算,所谓的短路运算是,与运算中,两边的表达式的布尔值,如果有一个为假,另外一个就不需要进行判断了。最为常见的地方是,if(o!=null&&o.equals(s)) 如果第一个为false 那么不会对第二个式子判断,但如果是非短路运算符& 会对第二个判断,但此时o为空,会抛出NullPointerExcetption异常


  而&还有取地址的作用 常用来对一个整数的后四bit位计算(常和ox0f进行运算)。


  4、在JAVA中如何跳出当前的多重嵌套循环?


  答:关键字 常见的有return、ok标号和break。用法上:ok是使用带有ok标号的break语句 我最常用的不是这一种,而是return和让外层的循环条件表达式的结果可以受到内层循环代码的控制。


  5、switch语句能否作用在byte上,能否作用在long上,能否作用在String上?


  答:可以作用在byte、short、int、char(及以上四种的包装类)7.0之后支持String 和枚举.可以理解为 expression值只能是整型表达式和枚举常量


  6、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?


  答:错误在于s1+1是一个短整型和一个1相加 1作为字面值是byte、short、int通用的,但在进行刚才的加法运算时,会被认为是一个整型。整型和短整型相加会出现自动类型提升。将提升后的整型值赋值给一个短整型会报错 而直接给short赋值一个1不会被认为是整型,只有在加法运算时会。但s1+=1;这中写法形式也不会出现自动类型提提升


  7、char型变量中能不能存贮一个中文汉字?为什么?


  答:可以。Char中放入的字符是以unicode编码方式存入的。Unicode编码是包含汉字的。但如果字符集没有的话。自然是不能存储的。


  8、用最有效率的方法算出2乘以8等于几?


  答:位运算 左移动几位相当于乘以2的几次方 右移动几位相当于除以2的几次方


  9、使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?


  答:是引用不能变。所以将对象作为实参时,有些人希望在形参上加修饰符final也是可以改变值的。我目前见过final用的最爽的地方就是单例模式中的饿汉式模式 当出现时间片结束时,纵然没有new完对象,再返回时,也不会new出新对象。


  10、"=="和equals方法究竟有什么区别?


  答:这两个方法的区别主要是针对对象类型 ==表示两个对象的引用是否相同 equals表示两个对象的内容是否相同。Equals常用在String的比较中,另外所有的对象都是继承自object类,equals方法是该类的一个方法,换句话说,所有的类都具备这个方法,当对两个对象调用equals比较时,如果没有Override的方法,那么就会调用object的方法,而object中的Equals方法默认是使用==的。



以上就是百知教育java培训机构的小编针对“Java基础学习:Java基础练习题”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。




上一篇:大数据培训:基于Hadoop的数据仓库Hive 基础知识

下一篇:深圳java程序员待遇怎么样,就业机会多吗

相关推荐

关闭

立即申请

www.baizhiedu.com