开目内部JAVA面试题库.pdfVIP

  • 5
  • 0
  • 约1.28万字
  • 约 14页
  • 2021-11-18 发布于广东
  • 举报
第 1章 技术相关 1.1. JAVA 基础 1.1.1. equals和== 有什么区别?分别比较的是什么 ? equals 比较的是两个对象的内容 == 比较的是对象引用 1.1.2. 抽象类中,可以定义静态变量吗 ? 可以,但抽象方法不能为 static 。 1.1.3. public, private, protected, default作用范围 当前类 同一包 子类 其他包 public √ √ √ √ protected √ √ √ friendly(default) √ √ private √ 1.1.4. 重写 (override)和重载 (overload)的区别 方法的重写 Overriding 和重载 Overloading 是 Java 多态性的不同表现。重写 Overriding 是父类与子类之间多态性的一种表现,重载 Overloading 是一个类中多态性的一种表现。如 果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding) 。 子类的对象使用这个方法时, 将调用子类中的定义, 对它而言, 父类中的定义如同被 “屏蔽” 了。如果在一个类中定义了多个同名的方法, 它们或有不同的参数个数或有不同的参数类型, 则称为方法的重载 (Overloading) 。 1.1.5. set里面的元素能不能重复 Set 里的元素是不能重复的 1.1.6. runtime exception举例 常用的有 ClassCastException, NullPointException, IllegalArgumentException, IndexOutOfBoundsException, SecurityException, UnsupportedOperationException 等等 1.1.7. 抽象类和接口的区别 ,怎么用 ?举例 声明方法的存在而不去实现它的类被叫做抽象类( abstract class),它用于要创建一个体 现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建 abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的 一个实例。 不能有抽象构造函数或抽象静态方法。 Abstract 类的子类为它们父类中的所有抽 象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的 其它类可以在类中实现这些方法。 接口( interface )是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过 实现这样的接口而获得。 接口中的所有方法都是抽象的, 没有一个有程序体。 接口只可以定 义 static final 成员变量。 接口的实现与子类相似, 除了该实现类不能从接口定义中继承行为。 当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实 现了该接口的类的任何对象上调用接口的方法。 由于有抽象类, 它允许使用接口名作为引用 变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换, instanceof 运算符可以用来决定某对象的类是否实现了接口。 抽象类和接口一样,都不能被直接实例化,必须通过实现接口 (implmenets interface) 或 者继承抽象类 (extends class)来实现子类。一个类只能继承一个抽象类 (或者父类

文档评论(0)

1亿VIP精品文档

相关文档