Java接口是一种特殊的抽象类,其中所有方法都是抽象的,没有方法体,而且不允许有属性。Java类可以实现一或多个接口,而一个接口也可以扩展另一个接口。本文将详细讲解如何在Java中继承父类并实现多个接口。
继承父类并实现接口的语法
下面是继承父类并实现多个接口的Java语法:
public class MyClass extends MyParentClass implements MyInterface1, MyInterface2, MyInterface3 {
// Class body goes here.
}
请注意以下几点:
MyClass
继承自MyParentClass
类;MyClass
实现了MyInterface1
、MyInterface2
和MyInterface3
接口;- 以逗号分隔接口,可以实现多个接口;
- 如果父类和接口都有相同的方法,子类必须先实现父类的方法。
示例1:继承Animal类并实现Run, Swim接口
下面是一个示例程序,演示如何继承Animal
类并实现Run
和Swim
接口。Animal
类是一个具体类,而Run
和Swim
接口是抽象接口。
public interface Run {
public void run();
}
public interface Swim {
public void swim();
}
public class Animal {
public void eat() {
System.out.println("Animal is eating");
}
}
public class Dog extends Animal implements Run, Swim {
public void run() {
System.out.println("Dog is running");
}
public void swim() {
System.out.println("Dog is swimming");
}
}
public class Main {
public static void main(String[] args) {
Dog d = new Dog();
d.eat(); // Output: Animal is eating
d.run(); // Output: Dog is running
d.swim(); // Output: Dog is swimming
}
}
在这个例子中,Dog
类继承自Animal
类,实现了Run
和Swim
接口。Dog
类中重写了run()
和swim()
方法,并在main()
方法中调用了这些方法。
示例2:继承Person类并实现Greet接口
下面是另一个示例程序,演示如何继承Person
类并实现Greet
接口。Person
类是一个具体类,而Greet
接口是抽象接口。
public interface Greet {
public void sayHello();
}
public class Person {
private String name;
private String city;
public Person(String name, String city) {
this.name = name;
this.city = city;
}
public void sayName() {
System.out.println("My name is " + this.name);
}
}
public class Greeter extends Person implements Greet {
public Greeter(String name, String city) {
super(name, city);
}
public void sayHello() {
System.out.println("Hello from " + this.city);
}
}
public class Main {
public static void main(String[] args) {
Greeter g = new Greeter("John", "London");
g.sayName(); // Output: My name is John
g.sayHello(); // Output: Hello from London
}
}
在这个例子中,Greeter
类继承自Person
类,实现了Greet
接口。Greeter
类中实现了sayHello()
方法,并在main()
方法中调用了这个方法。
这两个示例程序展示了在Java中继承父类并实现多个接口的方法和语法。无论是类还是接口,都可以被继承、实现和扩展,这使得Java成为一种非常灵活和可扩展的编程语言。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java接口操作(继承父类并实现多个接口) - Python技术站