Java面试重点:面向对象、String与Integer的区别

需积分: 5 1 下载量 75 浏览量 更新于2024-07-19 收藏 118KB DOC 举报
"这篇文档包含了Java面试中常遇到的一些核心知识点,主要涵盖了面向对象的四大特征、String类的性质以及int和Integer的区别。" 在Java编程语言中,面向对象编程是核心特性,主要包括四个关键概念: 1. **抽象**:抽象是将复杂问题简化的一种方式,它关注的是对象的主要特征,而忽略不重要的细节。抽象通常通过接口或抽象类来实现,允许开发者创建通用的代码,而不必关心具体实现的细节。 2. **继承**:继承是面向对象中的一个重要特性,它允许一个类(子类)继承另一个类(父类)的属性和方法。这样,子类就拥有了父类的特性,同时还可以添加或修改自己的特性,提高了代码的复用性。 3. **封装**:封装是将数据和操作数据的方法绑定在一起,形成一个独立的对象,对外只暴露有限的接口。这样做可以保护数据不被外部随意修改,增强代码的安全性。 4. **多态性**:多态性使得不同的对象能对相同的消息作出反应。在Java中,多态分为编译时多态(方法重载)和运行时多态(方法重写)。多态性提高了代码的灵活性,使得程序设计更加通用,能够处理多种类型的数据。 接下来,文档提到了`String`类。`String`在Java中不是基本数据类型,而是引用类型,属于`java.lang.String`类。由于它是`final`的,不能被其他类继承。在处理大量字符串拼接时,为了性能考虑,通常推荐使用`StringBuffer`或`StringBuilder`类,而不是连续的`+`操作。 最后,`int`是Java的基本数据类型,表示整数,而`Integer`是其对应的封装类。基本类型是直接存储在栈中,而封装类的对象存储在堆中,这意味着它们的创建和销毁方式不同,且封装类可以支持更多的面向对象特性,如方法调用。在默认情况下,引用类型的变量如果没有初始化,值为`null`,而原始类型的变量会有一个默认的初始值(例如,对于`int`是0)。 这些知识点是Java程序员需要深入理解的基础,特别是在面试和实际开发中经常会被问到和应用。