Java面试基础知识点解析:重载与重写

需积分: 9 2 下载量 41 浏览量 更新于2024-07-19 收藏 250KB DOCX 举报
多继承,但接口支持多继承。在Java中,一个类只能有一个父类,这通过"extends"关键字实现。然而,为了实现多种功能,Java引入了接口(interface),一个类可以实现多个接口,从而达到"多继承"的效果。接口是完全抽象的,不包含任何方法的实现,只声明方法的签名。通过实现多个接口,一个类可以获得多个接口提供的方法。 Java中的访问修饰符有哪些,它们的区别是什么? 答: Java中的访问修饰符主要有四种:public、protected、default(无修饰符)和private。它们决定了类成员(包括字段和方法)的可见性和访问范围。 1. public: 公共的,可以在任何地方被访问,无论是在同一个包内还是外部包。 2. protected: 受保护的,可以在同一个包内的任何类或不同包的子类中访问。 3. default: 没有指定访问修饰符,也称为包级私有,只允许在同一个包内的类访问。 4. private: 私有的,只能在声明它的类内部访问,对外部是不可见的。 这些访问修饰符的使用有助于封装和信息隐藏,以提高代码的安全性和可维护性。 异常处理在Java中扮演什么角色? 答: 异常处理是Java程序设计中的一个重要方面,用于处理运行时发生的错误。Java使用try-catch-finally语句块来捕获和处理异常。当程序执行过程中遇到不可预期的情况(如除以零、文件未找到等),会抛出异常。通过捕获这些异常,程序可以优雅地处理错误,而不是突然崩溃,提供更友好的用户体验,并有机会进行必要的清理操作。 Java集合框架包含哪些主要部分? 答: Java集合框架是Java API中的一组接口和类,提供了存储和操作对象的工具。主要包含以下部分: 1. 集合接口:如List(有序、可重复元素)、Set(无序、不允许重复元素)和Queue(先进先出的队列)。 2. 序列接口:如Deque(双端队列)和Iterator(迭代器)。 3. Map接口:如HashMap(基于哈希表)、TreeMap(基于红黑树)、LinkedHashMap(保持插入顺序或访问顺序)等,用于存储键值对。 4. 实现类:如ArrayList、LinkedList、HashSet、LinkedHashSet、TreeSet、ArrayDeque、HashMap、LinkedHashMap等,它们实现了上述接口并提供具体实现。 5. 工具类:如Collections和Arrays,提供了集合操作的静态方法,如排序、搜索、填充、拷贝等。 理解并熟练掌握Java集合框架对于编写高效、健壮的代码至关重要。 谈谈Java中的垃圾回收机制? 答: Java的垃圾回收(Garbage Collection,GC)是一种自动内存管理机制,负责监控和回收不再使用的对象所占用的内存。其主要目标是防止内存泄漏,使程序员无需手动管理内存。Java垃圾回收机制主要包含以下几个步骤: 1. 引用计数:跟踪每个对象的引用次数,当引用计数为0时,认为对象不再使用,可回收。 2. 增量收集:分段进行垃圾回收,减少长时间阻塞应用程序的可能性。 3. 标记-清除:首先标记所有被引用的对象,然后清除未被标记的对象。 4. 复制算法:将存活对象复制到一块连续的内存区域,然后清空原始区域。 5. 标记-压缩:标记所有存活对象,然后将它们紧凑地排列在一起,清除中间的空闲空间。 6. 分代收集:根据对象的生命周期将堆分为新生代(短期生存)和老年代(长期生存),针对不同代使用不同的垃圾回收策略。 Java垃圾回收机制虽然自动化,但过度的垃圾回收会影响性能,因此理解如何有效地使用对象和避免内存泄漏至关重要。