欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

10、接口

程序员文章站 2022-04-16 20:22:52
...

一、接口

 

  1. Java中的接口是一系列方法的声明,是一些方法特征的集合。
  2. 一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
  3. 是用关键字interface定义的
  4. 可以认为是一个特殊的抽象类
  5. 当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示

二、接口中包含的成员

 

  1. 最常见的有全局常量、抽象方法。
  2. 都是public的
  3. 注意:接口中的成员都有固定的修饰符
  4. 成员变量:public static final
  5. 成员方法:public abstract
  6. 如果public static final或者public abstract其中的单词少写一个也是可以的,在interface中,他会自动的补齐的,但一般不这么干
  7. 示例:
interface Inter
{
	public static final int NUM = 3;
	public abstract void show();
}
  

三、接口是不可以创建对象的,因为有抽象方法

 

  • 需要被子类实现,子类对接口中的抽象方法全都覆盖,子类才可以实例化
  • 否则子类是一个抽象类

四、实现接口

 

  用关键字 implements 不用extends

class Test implements Inter
{
	public void show()
	{
		//......
	}
}

  

五、接口可以被类多实现

 

  • 接口的出现将"多继承"通过另一种形式体现出来,即"多实现"
  • 是对java不支持多继承的转换形式

六、接口之间可以继承,接口之间可以多继承

interface A
{
	void methodA();
}
interface B
{
	void methodB();
}
interface C extends A,B
{
	void methodC();
}
class D implements C
{
	public void methodA(){}
	public void methodB(){}
	public void mehtodC(){}
}

  

七、接口的特点

 

  1. 接口是对外暴露的规则
  2. 接口是程序功能的扩展
  3. 接口的出现降低了耦合性
  4. 类与接口之间是实现关系
  5. 类可以继承一个类的同时实现多个接口,所以,接口的出现避免了单继承的局限性
  6. 接口与接口之间可以有继承关系
  7. 事物的扩展功能用interface来实现
  8. 示例
abstract class Student
{
	abstract void study();
	void sleep()
	{
		System.out.println("sleep");
	}
}
interface Smoking//抽烟是扩展功能
{
	void smoke();
}
class Zhang extends Student implements Smoking
{
	void study(){}
	public void smoke(){}
}
  

八、抽象类与接口

 

  • 抽象类:一般用于描述一个体系单元,将一组共性内容进行抽取,
  • 抽象类特点:可以在类中定义抽象内容让子类实现,可以定义非抽象内容让子类直接使用。它里面定义的都是一些体系中的基本内容。
  • 接口:一般用于定义对象的扩展功能,是在继承之外还需这个对象具备的一些功能。

1、共性:都是向上不断抽取的结果

 

2、区别:

 

  1. 抽象类只能被继承,而且只能单继承。
  2. 接口需要被实现,而且可以多实现。
  3. 抽象类中可以定义非抽象方法,子类可以直接继承使用。
  4. 接口中都有抽象方法,需要子类去实现。
  5. 抽象类使用的是 is a 关系。
  6. 接口使用的 like a 关系。
  7. 抽象类的成员修饰符可以自定义。
  8. 接口中的成员修饰符是固定的。全都是public的。
  • 10、接口
            
    
    博客分类: 四、面向对象 接口interface 
  • 大小: 11.6 KB
相关标签: 接口 interface