21xrx.com
2024-10-18 14:08:44 Friday
登录
文章检索 我的文章 写文章
Java面试问题大全及答案大全
2023-06-15 18:00:18 深夜i     --     --
Java面试 问题 答案

作为一名Java开发者,在面试时我们一定会遇到各种各样的问题,包括基础知识、编程思路、框架应用等等。在这篇文章中,我将整理出一些我在面试中遇到的Java面试问题,并附上答案及相关的代码例子,希望对你的面试有所帮助。

1. 什么是面向对象编程?请给出一个例子。

答:面向对象编程(OOP)是一种编程范式,它将数据和操作数据的方法放在了一个类的内部,并通过该类的实例进行调用。OOP的核心是类和对象,通过封装、继承和多态来达到代码重用、扩展性和可维护性等目的。

代码例子:


public class Animal {

  private String name;

  private int age;

  public Animal(String name, int age)

    this.name = name;

    this.age = age;

  

  public String getName()

    return name;

  

  public int getAge()

    return age;

  

  public void setName(String name)

    this.name = name;

  

  public void setAge(int age)

    this.age = age;

  

  public void eat() {

    System.out.println("Animal is eating.");

  }

}

public class Dog extends Animal {

  public Dog(String name, int age) {

    super(name, age);

  }

  @Override

  public void eat() {

    System.out.println("Dog is eating.");

  }

  public void bark() {

    System.out.println("Dog is barking.");

  }

}

public class Main {

  public static void main(String[] args) {

    Animal animal = new Animal("Animal", 1);

    animal.eat();

    Dog dog = new Dog("Dog", 2);

    dog.eat();

    dog.bark();

  }

}

2. 什么是多态?请给出一个例子。

答:多态是一种使父类变量可以指向子类对象的编程技巧,即同一个方法可以根据调用的对象的不同而表现出不同的行为。多态有助于简化代码和提高可扩展性

代码例子:


public class Animal {

  public void eat() {

    System.out.println("Animal is eating.");

  }

}

public class Dog extends Animal {

  @Override

  public void eat() {

    System.out.println("Dog is eating.");

  }

  public void bark() {

    System.out.println("Dog is barking.");

  }

}

public class Cat extends Animal {

  @Override

  public void eat() {

    System.out.println("Cat is eating.");

  }

  public void meow() {

    System.out.println("Cat is meowing.");

  }

}

public class Main {

  public static void main(String[] args) {

    Animal animal1 = new Dog();

    animal1.eat();

    

    Animal animal2 = new Cat();

    animal2.eat();

  }

}

3. 什么是单例模式?请给出一个例子。

答:单例模式是一种设计模式,它保证一个类只有一个实例,并提供一个全局访问点。在多线程环境下使用单例模式需要注意线程安全问题。

代码例子:


public class Singleton {

  private static Singleton instance;

  private Singleton() {}

  public static Singleton getInstance() {

    if (instance == null) {

      synchronized (Singleton.class) {

        if (instance == null) {

          instance = new Singleton();

        }

      }

    }

    return instance;

  }

}

  
  

评论区

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