`
stinge
  • 浏览: 149748 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java接口

    博客分类:
  • java
阅读更多

Java接口

 

一、功能与抽象类相似,作为模板使用来衍生子类。

 

不同: (1) 接口的成员变量必须初始化,并设置为final类型,也就是成员变量必须为常量,不能被修改

          (2)成员函数必须全为抽象函数

 

定义:

 

interface 接口名称
{
final 数据类型 成员名称 = 常数;
修饰符 abstract 返回类型 成员函数名(参数);
}
//其中 final与abstract可以省略

 

实现:

class 类名 implements 接口名
{

}
 

 

二、类似抽象类

 

  利用父类的数组变量来访问子类对象的成员

   (1)先创建父类的数组变量;

   (2)创建子类对象并放入数组,利用数组元素来访问子类的内容。

 

    只适合各个子类实现同一个父类中的方法

   例:

    BasketBall实现了两个接口,若用Ball来声明对象,则只能使用Ball接口中定义的方法或变量,而不能使用Shape里的   变量

 

package com;
public class JavaTest {
public static void main(String ar[])
{
 Ball basketball = new BasketBall();
 basketball.show();
 //System.out.println(basketball.PI);
}
}

interface Ball{
	public abstract void show();
}

interface Shape{
	final double PI = 3.14;
}
class BasketBall implements Ball,Shape{
   //override可以检查覆盖的方法是否存在

	@Override
	public void show() {
		// TODO Auto-generated method stub
		System.out.println("BasketBall");
	}
		
}

 

结果:

BasketBall

 

三、实现多重继承

 

  子类只能继承自一个父类,但可以实现多个接口,可以通过接口实现类的多继承。

   如上例,实现了连个接口。

 

四、接口的衍生

 

   接口可以通过extends关键字来衍生接口,与类的衍生不同的是,接口可以衍生自多个接口

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics