JAVA从入门到精通------基础篇------接口

1、什么是接口

接口就相当于是一种能力和约定,因为在java当中java只支持单继承,不能够多继承,为了满足多继承的方式,推出了接口的概念。

接口的概念:代表了某种能力

方法的定义:能力的具体要求

java为单继承,当父类的方法种类无法满足子类需求时,可实现接口扩充子类功能

接口支持多实现,可为类扩充多种能力


2、接口的规范

任何类在实现接口的时候,必须要实现接口中所有的抽象方法,否则此类为抽象类

实现接口中的抽象方法时,访问修饰符必须是public


3、接口引用

同父类一样,接口也可声明为引用,并指向实现类对象

注意:

仅可调用接口中所声明的方法,不可调用实现类中独有的方法

可强转回实现类本身类型,进行独有方法调用


4、接口的多态

public interface Swimming {
	public void swim();
	
}
public interface Running extends life{
	void shout();
    void run();
}
public abstract class Animal {
	
	public abstract void eat();
	public abstract void sleep();
	
}

public  class Dog extends Animal implements Running,Swimming{
	public void eat() {
		System.out.println("老狗我在啃骨头");
	}
	
	public void sleep(){
		System.out.println("老狗我在打呼噜");
	}

	@Override
	public void swim() {
		System.out.println("老狗我在洗海澡");
	}

	@Override
	public void run() {
		System.out.println("老狗我在狂撒欢");
	}

	@Override
	public void shout() {
		// TODO Auto-generated method stub
		System.out.println("老狗我在嗷嗷叫");
	}
	

}
public class Itest {

	public static void main(String[] args) {
		Dog xiaohei = new Dog();
		xiaohei.eat();
		xiaohei.sleep();
		xiaohei.run();
		xiaohei.swim();
		
		System.out.println("------------");
		
		Animal dahuang = new Dog();
		dahuang.eat();
		dahuang.sleep();
		
		System.out.println("------------");
		
		Swimming laopi = new Dog();
		laopi.swim();
		
		System.out.println("------------");
		
		Running wangcai = new Dog();
		wangcai.run();
		wangcai.shout();

	}

}

不同引用类型,仅可调用自身类型中所声明的方法


5、常见关系

类与类

单继承

extends 父类名称

类与接口

多实现

implements 接口名称2,接口名称1,...

接口与接口

多继承

extends 父接口2,父接口1,...


6、常量接口

将多个常用于表示状态或固定值的变量,以静态常量的形式定义在接口中统一管理,提高代码可读性


7、接口的好处

程序的耦合度降低

更自然的使用多态

设计与实现完全分离

更容易搭建程序框架

更容易更换具体实现

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值