1 基础篇1.1 基本功1.1.1面对对象特征封装,继承,多态和抽象1、 封装封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在 Java 当中,有 3 种修饰符: public, private 和 protected。每一种修饰符给其他的位于同一个包或者不同包下面对象给予了不同的访问权限。下面列出了使用封装的一些好处:1)通过隐藏对象的属性来保护对象内部的状态。2)提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展。3)禁止对象之间的不良交互提高模块化2、 继承继承给对象提供了从基类猎取字段和方法的能力。继承提供了代码的重用行,也可以在不修改类的情况下给现存的类添加新特性。3、 多态多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力。一个多态类型上的操作可以应用到其他类型的值上面。4、 抽象抽象是把想法从具体的实例中分离出来的步骤,因此,要根据他们的功能而不是实现细节来创建类。 Java 支持创建只暴漏接口而不包含方法实现的抽象的类。这种抽象技术的主要目的是把类的行为和实现细节分离开。1.1.2final, finally, finalize 的区别1、 final 修饰符(关键字)假如一个类被声明为 final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract 的,又被声明为 final 的。将变量或方法声明为 final,可以保证它们在使用中不被改变。被声明为 final 的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为 final 的方法也同样只能使用,不能重载。2、 finally在异常处理时提供 finally 块来执行任何清除操作。假如抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(假如有的话)。3、 finalize方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。1.1.3int 和 Integer 有什么区别int 是基本数据类型 ,而 Integer 是其包装类,注意是一个类。 为什么要提供包装类呢??? 一是为了在各种类型间转化,通过各种方...