The content of this article is to introduce how to implement interfaces in Java? The use of interfaces allows everyone to have a simple understanding of interfaces. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
In Java, interfaces, like classes, can have methods and variables, but methods declared in interfaces are abstract by default (only method signatures, no bodies).
The interface specifies what operations the class must perform, not how to operate. If a class implements an interface and does not provide method bodies for all functions specified in the interface, the class must be declared abstract.
Basic syntax of interface:
interface <interface_name> { // 声明常量字段 // 声明抽象方法 // 默认情况下 }
To declare an interface, use the interface keyword. It is used to provide complete abstraction. This means that all methods in the interface are declared with an empty body and are public, and all fields are public, static and final by default.
To implement an interface, use the implements keyword. A class that implements an interface must implement all methods declared in the interface.
Why use interfaces?
1. It is used to achieve complete abstraction.
2. Since Java does not support multiple inheritance in the case of classes, it can achieve multiple inheritance by using interfaces.
3. It is also used to achieve loose coupling.
4. Interfaces are used to achieve abstraction. So the question arises why use interface when we have abstract class?
The reason is that abstract classes may contain non-final variables, while variables in interface are final, public and static.
// 一个简单的接口 interface Player { final int id = 10; int move(); }
Implementation of interface
To implement the interface, we use the keyword: implement
Simple example:
Let us Consider an example of Bicylce, Bike, car, etc., they have common functions. So we built an interface and put all these common features together. Let Bicylce, Bike, car, etc. implement all these features in their own classes in their own way.
import java.io.*; interface Vehicle { // 一切都是抽象的方法 void changeGear(int a); void speedUp(int a); void applyBrakes(int a); } class Bicycle implements Vehicle{ int speed; int gear; // 换档 @Override public void changeGear(int newGear){ gear = newGear; } // to increase speed @Override public void speedUp(int increment){ speed = speed + increment; } // 降低速度 @Override public void applyBrakes(int decrement){ speed = speed - decrement; } public void printStates() { System.out.println("speed: " + speed + " gear: " + gear); } } class Bike implements Vehicle { int speed; int gear; // to change gear @Override public void changeGear(int newGear){ gear = newGear; } // to increase speed @Override public void speedUp(int increment){ speed = speed + increment; } // to decrease speed @Override public void applyBrakes(int decrement){ speed = speed - decrement; } public void printStates() { System.out.println("speed: " + speed + " gear: " + gear); } } class GFG { public static void main (String[] args) { // creating an inatance of Bicycle // doing some operations Bicycle bicycle = new Bicycle(); bicycle.changeGear(2); bicycle.speedUp(3); bicycle.applyBrakes(1); System.out.println("Bicycle present state :"); bicycle.printStates(); // creating instance of bike. Bike bike = new Bike(); bike.changeGear(1); bike.speedUp(4); bike.applyBrakes(3); System.out.println("Bike present state :"); bike.printStates(); } }
Summary: The above is the entire content of this article, I hope it will be helpful to everyone's study. More related video tutorials: JavaTutorial!
The above is the detailed content of How to implement interface in Java? Use of interface. For more information, please follow other related articles on the PHP Chinese website!