当前位置: 技术问答>java相关
JAVA 中的接口到底是什么东东 ? 请各位指教
来源: 互联网 发布时间:2015-03-06
本文导语: 看了半天接口,不知所云,能简单的告诉我接口到底作什么用的吗? 与抽象类有什么区别? | 鸟 飞机 热气球 它们都能飞行是吧?那么它们有一个公共的能力:就是飞行。这个“飞行能...
看了半天接口,不知所云,能简单的告诉我接口到底作什么用的吗? 与抽象类有什么区别?
|
鸟 飞机 热气球
它们都能飞行是吧?那么它们有一个公共的能力:就是飞行。这个“飞行能力”就是一个接口。它里面只包含了常量和抽象方法。为什么是这样呢?看下面一个问题。
当然,它们的飞行方法都不一样的是吧?所以,接口“飞行能力”不能包含具体的属性和方法,因为要实现“飞行能力”这个接口的类的飞行方法肯定不一样的。所以,接口里只包含了常量和抽象方法。OK,怎么实现接口呢?
找本语法书看看吧。
---------------------
这么讲你明白了吧
它们都能飞行是吧?那么它们有一个公共的能力:就是飞行。这个“飞行能力”就是一个接口。它里面只包含了常量和抽象方法。为什么是这样呢?看下面一个问题。
当然,它们的飞行方法都不一样的是吧?所以,接口“飞行能力”不能包含具体的属性和方法,因为要实现“飞行能力”这个接口的类的飞行方法肯定不一样的。所以,接口里只包含了常量和抽象方法。OK,怎么实现接口呢?
找本语法书看看吧。
---------------------
这么讲你明白了吧
|
一种用法:
interface walkable
{
public void walk();
}
class human implements walkable
{
public void walk()
{
//两条腿走路的实现
}
}
class cat implements walkable
{
public void walk()
{
//四条腿走路的实现
}
}
在某个类中有方法
public void move(walkable wa)
{
wa.walk();
}
表示凡是implements walkable接口的对象(一定实现了walk()方法)都可以
作为move的参数传入。这样human对象和cat对象都可作为参数传入。
在这里interface更像是通行证,保证传入的对象有我可以调用的方法(walk())。
interface walkable
{
public void walk();
}
class human implements walkable
{
public void walk()
{
//两条腿走路的实现
}
}
class cat implements walkable
{
public void walk()
{
//四条腿走路的实现
}
}
在某个类中有方法
public void move(walkable wa)
{
wa.walk();
}
表示凡是implements walkable接口的对象(一定实现了walk()方法)都可以
作为move的参数传入。这样human对象和cat对象都可作为参数传入。
在这里interface更像是通行证,保证传入的对象有我可以调用的方法(walk())。