21xrx.com
2024-11-05 17:28:29 Tuesday
登录
文章检索 我的文章 写文章
Java面试题:准备认真,保持冷静
2023-06-15 11:46:51 深夜i     --     --
Java面试题 final关键字 自动拆装箱 多态性

如果你是一名Java程序员,那么你肯定会希望在面试中获得成功。但是面对众多Java面试题,心情难免会有些紧张和焦虑。不过,如果你做好准备,冷静应对,那么这些问题大都不是难题。

面试官通常会问一些基础的Java面试题,例如以下问题:

1.请解释用final关键字定义类、方法、变量的作用。

2.什么是自动拆箱和装箱?

3.Java类的生命周期包括什么?请解释它们的用途。

4.请解释Java中的多态性。

答案如下:

1.final关键字可以分别用于定义类、方法和变量。使用final关键字定义类时,该类不能被继承,即它是最终版本的类。使用final关键字定义方法时,该方法不能被覆盖。使用final关键字定义变量时,该变量只能被赋值一次,即常量。

2.装箱和拆箱是将基本数据类型转换为对象类型(装箱)和将对象类型转换为基本数据类型(拆箱)。Java 5之后,JVM能够自动执行这些转换操作,即自动装箱和拆箱。

3. Java类的生命周期包括类加载、类连接和类初始化。当类被加载到JVM后,JVM会对其进行连接,并执行一些必要的初始化操作(例如设置静态变量的值、执行静态代码块等),然后才能真正地使用该类。

4. 多态性指同一种行为的不同表示形式。在Java中,多态性体现在两个方面:继承和接口。当一个类继承了另一个类时,它可以访问其父类中的所有方法和变量。当实现了一个接口时,类就必须实现该接口中定义的所有方法。

示例代码:

final class MyClass {

  public final void myMethod()

    //方法体

}

public class Main {

  public static void main(String[] args)

    Integer i = 10; //自动装箱

    int j = i; //自动拆箱

}

public class MyClass {

  static int x;

  static

    x = 10; //执行静态代码块

}

class Animal {

  public void makeSound() {

    System.out.println("不知道叫什么声");

  }

}

class Dog extends Animal {

  @Override

  public void makeSound() {

    System.out.println("汪汪汪");

  }

}

class Cat extends Animal {

  @Override

  public void makeSound() {

    System.out.println("喵喵喵");

  }

}

public class Main {

  public static void main(String[] args) {

    Animal animal = new Animal();

    Dog dog = new Dog();

    Cat cat = new Cat();

    animal.makeSound();

    dog.makeSound();

    cat.makeSound();

  }

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复