黑马程序员------毕老师视频笔记第七天------面向对象(接口)
2014-05-19 11:35
387 查看
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
格式:interface {…}
接口中的成员修饰符是固定的。
①成员常量:public static final
②成员函数:public abstract
接口的出现将“多继承”通过另一种形式体现出来,即:多实现。
接口:初期理解,可以认为是一个特殊的抽象类
当抽象类中的抽象方法都是抽象的,那么该类可以通过接口的形式来表示。
class用于定义类
interface用于定义接口
接口在定义时,格式特点:
①接口中常见定义:常量,抽象方法
②接口中的成员都有固定修饰符
常量:publicstatic final
方法:publicabstract
接口中的成员都是public的,开发中如果忘写了,只要定义的是interface ,那么成员中的常量和方法前的修饰符系统会自动加上的,但是为了保证阅读性,要加上固定的修饰符。
接口不能创建对象。
类与类之间关系式继承extends,类与接口之间是实现关系implements
子类对接口中的抽象方法全都实现以后才可以被实例化
下面例子中,接口中的NUM是一个全局常量,访问方式有三种
*接口可以被类多实现,也是对多继承不支持的转换形式
java不支持多继承的原因主要是父类里面可能有相同的函数,但是功能不同,为什么接口可以多实现呢?因为接口中的方法都是虚方法,没有函数体。
*子类在继承父类的同时,可以实现多个接口。
*类与类之间是继承关系,类与接口之间是实现关系,那么接口与接口之间是什么关系呢?
继承关系。
一个类实现子接口的时候,要实现接口体系中所有方法。
一个类中不能有返回值不同,函数名相同的方法,所以接口继承体系中,不能有这样的方法。
编译通过
注意:定义一个类继承另一个类且同时实现接口的时候,要先写继承后写接口,下面这么写是不对的
class Test implements Inter extends Fu {……}
接口的特点:
接口是对外暴露的规则
接口是程序的功能扩展
接口可以用来多实现
类与接口之间是实现关系,而且类可以继承一个类的同时实现多个接口
接口与接口之间可以有继承关系
接口实例:主板,各种插口就是接口,提高扩展性,降低耦合性
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
格式:interface {…}
接口中的成员修饰符是固定的。
①成员常量:public static final
②成员函数:public abstract
接口的出现将“多继承”通过另一种形式体现出来,即:多实现。
接口:初期理解,可以认为是一个特殊的抽象类
当抽象类中的抽象方法都是抽象的,那么该类可以通过接口的形式来表示。
class用于定义类
interface用于定义接口
接口在定义时,格式特点:
①接口中常见定义:常量,抽象方法
②接口中的成员都有固定修饰符
常量:publicstatic final
方法:publicabstract
接口中的成员都是public的,开发中如果忘写了,只要定义的是interface ,那么成员中的常量和方法前的修饰符系统会自动加上的,但是为了保证阅读性,要加上固定的修饰符。
接口不能创建对象。
类与类之间关系式继承extends,类与接口之间是实现关系implements
子类对接口中的抽象方法全都实现以后才可以被实例化
下面例子中,接口中的NUM是一个全局常量,访问方式有三种
interface Inter { public static final int NUM = 3; public abstract void show(); } class Test implements Inter { public void show() {} } class Demo { public static void main (String [] args) { Test t = new Test(); System.out.println(t.NUM); System.out.println(Test.NUM); System.out.println(Inter.NUM); } }
*接口可以被类多实现,也是对多继承不支持的转换形式
java不支持多继承的原因主要是父类里面可能有相同的函数,但是功能不同,为什么接口可以多实现呢?因为接口中的方法都是虚方法,没有函数体。
*子类在继承父类的同时,可以实现多个接口。
*类与类之间是继承关系,类与接口之间是实现关系,那么接口与接口之间是什么关系呢?
继承关系。
一个类实现子接口的时候,要实现接口体系中所有方法。
一个类中不能有返回值不同,函数名相同的方法,所以接口继承体系中,不能有这样的方法。
interface Inter { public static final int NUM = 3; public abstract void show(); } interface InterA { public abstract void method(); } interface InterB extends Inter { public abstract void func(); } class Fu { } class Test extends Fu implements Inter,InterA { public void show(){} public void method(){} } class Test1 implements InterB { public void show(){} public void func(){} }
编译通过
注意:定义一个类继承另一个类且同时实现接口的时候,要先写继承后写接口,下面这么写是不对的
class Test implements Inter extends Fu {……}
接口的特点:
接口是对外暴露的规则
接口是程序的功能扩展
接口可以用来多实现
类与接口之间是实现关系,而且类可以继承一个类的同时实现多个接口
接口与接口之间可以有继承关系
接口实例:主板,各种插口就是接口,提高扩展性,降低耦合性
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
相关文章推荐
- 黑马程序员------毕老师视频笔记第八天------面向对象(接口多态的应用示例)
- 黑马程序员------毕老师视频笔记第七天------面向对象(模板方法设计模式)
- 黑马程序员------毕老师视频笔记第七天------面向对象(继承)
- 黑马程序员------毕老师视频笔记第七天------面向对象(final关键字)
- 黑马程序员------毕老师视频笔记第七天------面向对象(抽象类)
- 黑马程序员------毕老师视频笔记第五天------面向对象(封装)
- 黑马程序员------毕老师视频笔记第六天------面向对象(javadoc文档的制作)
- 黑马程序员------毕老师视频笔记第十天------面向对象(面向对象练习题上)
- 黑马程序员------毕老师视频笔记第五天------面向对象(构造函数)
- 黑马程序员------毕老师视频笔记第十天------面向对象(面向对象练习题下)
- 黑马程序员------毕老师视频笔记第九天------面向对象(内部类)
- 黑马程序员------毕老师视频笔记第六天------面向对象(static关键字)
- 黑马程序员------毕老师视频笔记第十天------面向对象(包)
- 黑马程序员------毕老师视频笔记第六天------面向对象(main函数)
- 黑马程序员------毕老师视频笔记第十天------面向对象(异常下)
- 黑马程序员------毕老师视频笔记第九天------面向对象(异常上)
- 黑马程序员------毕老师视频笔记第八天------面向对象(Object类)
- 黑马程序员------毕老师视频笔记第六天------面向对象(对象初始化过程)
- 黑马程序员------毕老师视频笔记第五天------面向对象(this关键字)
- 黑马程序员------毕老师视频笔记第八天------面向对象(多态)