您当前的位置: 首页 >  Java

星夜孤帆

暂无认证

  • 3浏览

    0关注

    626博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Java学习笔记(20)-接口

星夜孤帆 发布时间:2018-05-22 09:44:18 ,浏览量:3

接口

    接口相当于所有方法都是抽象方法,所有属性都是常量的抽象类。

    接口中只能声明常量和抽象方法。

    接口可以定义常量,可以引用实现类的实例。

    接口不能直接实例化。

    具体类实现接口必须实现全部的抽象方法。    

    接口可以继承接口。

    类可以实现多个接口,接口和实现类是父子类型关系。

    具体类实现接口必须实现全部的抽象方法,就说明:接口约定了具体类的方法,约定了类的外部行为。

    接口可以实现软件组件之间的插接组装关系。

    

package day04;

/*
 * interface差不多abstract class
 * 接口中只能声明抽象方法和常量
 * Runner可以跑的人
 * 使用接口可以定义变量,接口不能实例化,即接口只能被实现
 * 具体类实现了一个接口,必须实现全部的抽象方法。
 * 具体类可以同时实现多个接口,就是多继承现象
 * 多重继承:Cat既是Hunter也是Runner
 * implements实现,实际是继承关系
 */
public class Demo10 {
	public static void main(String[] args){
		Cat tom = new Cat();
		Hunter hunter = tom;
		Runner runner = tom;
		hunter.hunt();
		hunter.run();
		runner.run();
//		new Runner();//编译错误,不能创建接口的实例
//		runner.hunt();编译错误Runner上没有定义hunt方法
	}
}
class Cat implements Hunter,Runner{//实现多个接口
	public void hunt(){//实现接口中的抽象方法
		System.out.println("抓老鼠去!");
	}
	public void run(){
		System.out.println("速度是"+SPEED);//SPEED从Runner继承的
	}
}
 interface Hunter extends Runner {// 猎人是能跑到
	void hunt();// 打猎
}

interface Runner {
	/* public static final */ int SPEED = 100;

	/* public abstract */ void run();
}
关注
打赏
1636984416
查看更多评论
立即登录/注册

微信扫码登录

0.0428s