21xrx.com
2024-11-05 21:40:05 Tuesday
登录
文章检索 我的文章 写文章
Java面试常见问题及示例答案
2023-06-18 09:20:44 深夜i     --     --
Java多态性 Java抽象类 Java接口

在Java的面试中,有一些常见的问题是必须掌握的。这篇文章将向您介绍最常见的Java面试问题,以及可以用来回答这些问题的示例代码。

1.谈一谈Java中的多态性?

多态性是指同一类可以表现出不同的行为或状态的能力。在Java中,多态性通过覆盖和重载方法来实现。例如:


class Animal {

 public void makeSound() {

  System.out.println("Animal is making a sound");

 }

}

class Cat extends Animal {

 public void makeSound() {

  System.out.println("Meow");

 }

}

class Dog extends Animal {

 public void makeSound() {

  System.out.println("Woof");

 }

}

在上面的代码中,Animal是一个基类,而Cat和Dog是继承自Animal的子类。每个类都实现了Animal的makeSound方法,但Dog和Cat的实现是不同的。由于多态性的原因,我们可以通过Animal类型的引用来调用子类的实现:


Animal myAnimal = new Dog();

myAnimal.makeSound(); // 输出 "Woof"

myAnimal = new Cat();

myAnimal.makeSound(); // 输出 "Meow"

2.什么是Java中的抽象类?

抽象类是一种你无法直接实例化的类。它通常被用作其他类的基类,其中它定义了一些方法,但这些方法没有实现。相反,子类将覆盖这些方法并提供自己的实现。抽象类可以包含实现的方法,但它至少包含一个没有实现的抽象方法。例如:


abstract class Animal {

 public abstract void makeSound();

 public void eat() {

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

 }

}

class Cat extends Animal {

 public void makeSound() {

  System.out.println("Meow");

 }

}

class Dog extends Animal {

 public void makeSound() {

  System.out.println("Woof");

 }

}

在上面的代码中,抽象类Animal定义了一个抽象方法makeSound()和一个实现的方法eat()。子类Cat和Dog都重写了makeSound()方法,但没有重写eat()方法。

3.什么是Java中的接口?

接口是一种Java类,它定义了一组方法,这些方法由其他类来实现。接口中的所有方法都是抽象的,并且不能有方法的实现。我们可以通过使用关键字“implements”来实现接口。例如:


interface Animal {

 public void makeSound();

}

class Cat implements Animal {

 public void makeSound() {

  System.out.println("Meow");

 }

}

class Dog implements Animal {

 public void makeSound() {

  System.out.println("Woof");

 }

}

在上面的代码中,Animal是一个接口,它定义了一个抽象方法makeSound()。Cat和Dog实现了Animal接口,因此必须实现Animal中定义的所有方法。

  
  

评论区

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