首页 >Java >java教程 >在Java中如何实现接口?接口的使用

在Java中如何实现接口?接口的使用

青灯夜游
青灯夜游原创
2018-11-21 18:27:544217浏览

本篇文章给大家带来的内容是介绍在Java中如何实现接口?接口的使用,让大家对接口有一个简单的了解。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

在java中,接口像类一样,可以有方法和变量,但在接口中声明的方法默认是抽象的(只有方法签名,没有主体)。  

接口是指定类必须执行什么操作,而不是如何操作。如果类实现了接口并且没有为接口中指定的所有函数提供方法体,则必须将类声明为抽象的。

接口的基本语法:

interface <interface_name> {
    
    // 声明常量字段
    // 声明抽象方法
    // 默认情况下
}

要声明接口,请使用interface关键字。它用于提供完全抽象。这意味着接口中的所有方法都是使用空主体声明的,并且是公共的,默认情况下所有字段都是public,static和final。

要实现接口,请使用implements关键字。实现接口的类必须实现接口中声明的所有方法。

为什么要使用接口?

1、它用于实现完全抽象。

2、由于java在类的情况下不支持多重继承,但是通过使用接口它可以实现多重继承。

3、它还用于实现松耦合。

4、接口用于实现抽象。所以问题出现了为什么在我们有抽象类时使用接口?

原因是,抽象类可能包含非final变量,而interface中的变量是final,public和static。

// 一个简单的接口
interface Player 
{ 
    final int id = 10; 
    int move(); 
}

接口的的实现

要实现接口,我们使用关键字:implement

简单实例:

让我们考虑一个Bicylce, Bike, car等车子的例子,它们有共同的功能。所以我们建立了一个接口并把所有这些共同的功能放在一起。让Bicylce, Bike, car…等等用他们自己的方式在他们自己的类里实现所有这些特征。

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(); 
	} 
}

2.jpg

总结:以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多相关视频教程:Java教程

以上是在Java中如何实现接口?接口的使用的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn