接口是一种标准 接口的特点

接口是一种标准

  • 列如:
    JDBC,用java连接各种数据库。
    数据库有很多种:sql server,access,mysql…
    这些数据库是有不同的公司生产的,开发的。
    java程序:去连接不同的数据库时,使用相同的代码。希望java代 码具有通用性,那么java就要制定一个标准

  • 这些标准通常是一个接口,这些接口公布出来,由各个数据库的厂商来实现它。

接口和类是同一个级别的概念。
引用数据类型:类、接口、数组、枚举…

1、如何声明一个接口

语法格式:
【修饰符】 interface 接口名{

}

2、接口的成员有哪些?

JDK1.8之前:
(1)全局的静态的常量:public static final
(2)公共的抽象的方法:public abstract

JDK1.8之后:

说明:
接口是没有构造器,代码块,和除了全聚德静态的常量以外的属性等。

3、如何使用接口?

接口就是用来被实现的。
【修饰符】 class 实现类 【extends 父类】 implements 接口们(多个){
}

4、接口的特点

(1)实现类在实现接口时,必须实现接口的所有的抽象的方法,否则这个实现类就是抽象类
(2)一个类可以同时实现多个接口
(3)接口不能直接创建对象
(4)接口可以与实现类的对象构成多态引用
(5)一个类可以同时继承父类,又实现接口,但是要求继承在前,接口在后
(6)接口与接口之间支持多继承

理解:
父类:就是亲生父亲,只有一个
接口:就像是干爹,可以有多个

public class TestDefineAndUseInterface {
	public static void main(String[] args) {

		Flyable f = new Bird();// (4)接口可以与实现类的对象构成多态引用
		f.fly();
	}
}

interface Flyable {
	int MAX_VALUE = 7900000;// 全局的静态的常量:public static final
	int MIN_VALUE = 0;

	void fly();// 公共的抽象的方法:public abstract

}

interface Jumpable {
	void jump();// 公共的抽象的方法:public abstract
}

class Animal {

}

class Bird extends Animal implements Flyable, Jumpable {
//(2)一个类可以同时实现多个接口
//(5)一个类可以同时继承父类,又实现接口,但是要求继承在前,接口在后
	@Override
	public void fly() {
		System.out.println("我要更得更高");
	}

	@Override
	public void jump() {
		System.out.println("跳高");

	}

}

/*
 * 类与类之间:继承extends 
 * 类与接口之间:实现implements 
 * 接口与接口之间:继承extends 并且接口支持多继承
 * 
 */

interface A {
	void a();
}

interface B {
	void b();
}

interface C extends A, B {
	void c();
}

class MySubClass implements C {

	@Override
	public void a() {
		// TODO Auto-generated method stub

	}

	@Override
	public void b() {
		// TODO Auto-generated method stub

	}

	@Override
	public void c() {
		// TODO Auto-generated method stub
		
	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值