Java面试必知:内部类、&和&&、Collection与Collections解析
需积分: 0 145 浏览量
更新于2024-09-20
收藏 62KB DOC 举报
"java面试常识"
在Java面试中,掌握一些基本但重要的概念是至关重要的。以下是一些关于Java编程和面试常考知识点的详细解释:
1. 内部类(Inner Class):Java中的内部类分为非静态内部类(也称成员内部类)和静态内部类。非静态内部类可以直接访问外部类的成员,包括私有成员,因为它持有一个隐含的对外部类的引用。而静态内部类则不持有对外部类的引用,因此可以独立于外部类实例存在,创建它的对象也不需要外部类对象。但是,静态内部类不能直接访问外部类的非静态成员。
2. & 和 && 的区别:& 是位运算符,当应用于两个布尔值时,它会执行按位与运算。而在逻辑表达式中,&& 是逻辑与运算符,只有当左右两边的操作数都为真时,结果才为真。&& 有短路特性,即如果左边的表达式为假,右边的表达式不会被计算。
3. Collection 和 Collections 的区别:Collection 是Java集合框架的顶级接口,它定义了集合的基本操作,如添加元素、删除元素等。Set 和 List 是 Collection 的子接口。Collections 是一个工具类,提供了许多静态方法,用于操作集合,如排序、查找、同步控制等。
4. assert(断言):断言用于在开发和测试阶段检查程序状态,确保某些条件始终为真。在代码中,使用 `assert` 关键字定义断言。在默认情况下,断言在发布版本中是关闭的,可以通过 `-ea` 或 `-enableassertions` 参数在JVM启动时启用。
5. String 对象的创建:`String s = new String("xyz");` 会创建两个对象。一个是字符数组 "xyz",另一个是 String 对象,它引用该字符数组。而在字符串连接中,如 `s1 += 1;` 实际上会创建一个新的 String 对象,因为 String 是不可变的。
6. Math.round 方法:`Math.round(11.5)` 返回 12,因为 round 方法会四舍五入到最接近的整数。`Math.round(-11.5)` 返回 -11,遵循同样的原则。
7. short 变量的赋值:在 `short s1 = 1; s1 = s1 + 1;` 中,`s1 + 1` 运算的结果是 int 类型,需要显式转换回 short,否则会导致编译错误。而 `s1 += 1;` 是合法的,因为 Java 自动处理了类型转换。
8. goto 关键字:Java 中的 goto 是保留字,但并没有在语言中实现,这意味着无法使用 goto 作为跳转语句。
9. length 方法:数组不具有 length() 方法,而是使用 `length` 属性来获取数组的长度。而 String 类有一个 `length()` 方法,用于获取字符串的字符个数。
以上就是Java面试中常见的知识点,理解并掌握这些内容对于面试和实际编程都是非常有益的。在准备面试时,除了这些基础概念,还应关注多线程、异常处理、IO流、设计模式、数据结构与算法等方面的知识。
2018-01-22 上传
2008-11-05 上传
2008-11-21 上传
2010-03-12 上传
2009-04-22 上传
2011-04-28 上传
2011-05-20 上传
2009-03-29 上传
geyanisme
- 粉丝: 0
- 资源: 1
最新资源
- BottleJS快速入门:演示JavaScript依赖注入优势
- vConsole插件使用教程:输出与复制日志文件
- Node.js v12.7.0版本发布 - 适合高性能Web服务器与网络应用
- Android中实现图片的双指和双击缩放功能
- Anum Pinki英语至乌尔都语开源词典:23000词汇会话
- 三菱电机SLIMDIP智能功率模块在变频洗衣机的应用分析
- 用JavaScript实现的剪刀石头布游戏指南
- Node.js v12.22.1版发布 - 跨平台JavaScript环境新选择
- Infix修复发布:探索新的中缀处理方式
- 罕见疾病酶替代疗法药物非临床研究指导原则报告
- Node.js v10.20.0 版本发布,性能卓越的服务器端JavaScript
- hap-java-client:Java实现的HAP客户端库解析
- Shreyas Satish的GitHub博客自动化静态站点技术解析
- vtomole个人博客网站建设与维护经验分享
- MEAN.JS全栈解决方案:打造MongoDB、Express、AngularJS和Node.js应用
- 东南大学网络空间安全学院复试代码解析