《特征之接口与抽象类.pptx》由会员分享,可在线阅读,更多相关《特征之接口与抽象类.pptx(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、进度进度第1页/共20页目标目标会定义接口和访问接口中的方法。熟练掌握接口的使用。了解接口和抽象类的区别。了解接口的多态问题。熟练掌握使用instanceof判断类型第2页/共20页什么是接口什么是接口所谓接口就是一个完成某些特定功能的类。在日常生活中就好比一个产品的说明书,通过阅读说明书可以让消费者更多地了解产品的功能以及使用中的注意事项。在Java中也是如此,接口是一个功能的集合第3页/共20页接口的定义接口的定义首先来举一个例子,汽车的移动就好比一个接口,在以后生产的汽车中都遵循这个接口进行制造。而接口中只定义了汽车移动的形式,没有具体的去定义是怎么进行移动的,所以接口就好比是一个规定。
2、下面介绍下如何定义一个接口。接口修饰符 interface 接口名称/成员变量和方法的申明接口修饰符和类的修饰符是一样的。interface是定义接口的关键字。接口里的成员变量默认为public static final类型的接口不能声明为final的,因为final类型的必须要实现。第4页/共20页访问接口里的常量访问接口里的常量在接口里定义的成员变量为常量,是因为接口为每个成员变量默认的修饰是public static final类型的,即便不显式的修饰也默认的加上了。下面通过代码来演示接口里的常量。第5页/共20页接口的使用接口的使用接口就是一个特殊的抽象类,抽象类里有抽象的方法和普通的
3、方法,而接口里方法全为抽象的,需要在其子类进行具体的方法实现。类就是一个产品的详细功能说明,而接口就是这些功能的简要说明。在本节里详细说明接口是如何使用的,以及它们的注意事项。第6页/共20页接口里的方法如何创建接口里的方法如何创建在接口里创建方法和一个类里的方法很相似,但不同点就是接口里的方法没有具体的方法体,而类里的方法必须去实现其方法体。下面用一段代码来演示在接口里如何定义方法。01/创建一个接口名字为aaa02public interface aaa0304/创建一个接口方法getMax()05public int getMax();0607/创建一个接口方法getMes()08Str
4、ing getMes();09第7页/共20页接口和类的区别接口和类的区别总结一下接口的方法和类里的方法的区别。在定义接口里的方法和类里的方法都是有一定规则的,但是它们之间的定义是有一定区别,分别如下:接口里的方法默认被修饰为public、abstract类型。类里的方法如果修饰为abstract类型,将提示错误。接口里的方法不能是static、final类型,只能为public、abstract类型。类里的方法不能为final、abstract类型。第8页/共20页接口的实现(接口的实现(1 1)在前面小节里介绍了接口创建及其注意事项,创建接口就是为了来实现。下面介绍如何使用接口,以及使用接
5、口的注意事项。接口的语法为:类的修饰符 class 类名称 implements 接口名称。通过上面的语法结构可以看出和类的继承很相似,下面通过一段代码来演示接口是如何实现的。01/创建一个包,名字为a02package a;04/创建一个接口名字为aaa05public interface aaa0607/创建一个接口方法getMax08public int getMax();0910/创建一个接口方法getMes11String getMes();12第9页/共20页接口的实现(接口的实现(2 2)14import a.aaa;1516/test类描述的是实现接口的方法17public c
6、lass test implements aaa1819/实现接口里的方法20public int getMax()2122/具体的方法体23return 0;242526/实现接口里的方法27public String getMes()2829/具体的方法体30return null;3132第10页/共20页什么是抽象类什么是抽象类抽象类和接口是有些类似的,抽象类需要其他类继承来实现抽象类中的方法,以及给出更多的方法。在日常生活中的一个产品的简要介绍和详细介绍的结合,说明了产品具有什么功能,和这个功能都完成了什么。在Java中也是类似的,接口是抽象类的特殊版本。接口里必须都为抽象的,而抽象
7、类里可以为抽象的也可以有其他形式的存在。第11页/共20页抽象类的使用和特点(抽象类的使用和特点(1 1)抽象类和一般的类很相似,所谓抽象类,就是在类里存在一些没有方法体的方法,即抽象方法。下面通过一段代码来演示抽象类。第12页/共20页抽象类的使用和特点(抽象类的使用和特点(2 2)下面总结抽象类的特点,如下所示。抽象类一般在父类中使用,而它的子类实现父类中的抽象方法。如果父类有一个或多个抽象方法,那么父类必须为抽象类。抽象类里的抽象方法没有任何方法体,子类要实现父类的所有抽象方法。如果没实现抽象方法,其子类即为抽象类。抽象类是用来继承的,不能被实例化。所有的抽象方法都必须声明在抽象类中。抽
8、象类里的抽象方法,只有在子类实现了才能使用。抽象类里允许有抽象方法和普通方法。抽象类里的普通方法可以被子类调用。第13页/共20页抽象类与接口区别抽象类与接口区别在前面的小节里学习了抽象类和接口,它们之间很相似但是也是有区别的。它们之间的区别如下:抽象类中有一个抽象方法或多个抽象方法。如果抽象类的子类里有一个没有实现的抽象方法,那么这个类也是抽象类。实现抽象类里的方法可以实现部分方法,也可以实现所有方法。抽象类里可以有成员变量。抽象类里可以有私有的方法和私有的成员变量。接口中的方法全部都被修饰为抽象方法。接口里的方法都被默认修饰为public abstract类型的。接口里的变量都被默认修饰为
9、public static final类型的,即常量。一个类可以实现一个接口,也可以实现多个接口。接口里的方法必须要全部实现。接口里没有成员变量。接口里的方法全部都是public,即公共类型的。第14页/共20页判断类型判断类型instanceof一般使用于多态的时候,在代码中判断对象的引用类型具体为哪一种类型。根据不同的对象类型来执行不同对象中的方法。本小节介绍什么是instanceof,以及使用它的注意事项。第15页/共20页什么是什么是instanceofinstanceof所谓instanceof在字面上可以理解为检查实例。instanceof在Java中是一个操作符,也是Java所保
10、留的关键字。下面介绍instanceof的语法结构:对象的引用 instanceof 类或接口instanceof语句的返回结果是boolean类型的。如果返回true,说明对象的引用是该对象所指的类或接口;如果返回false,说明对象的引用是该对象所指的类或接口。第16页/共20页使用使用instanceofinstanceof的注意事项的注意事项在使用instanceof进行对象类型判断的时候也是有规则要遵循的,下面总结使用instanceof有哪些规则。instanceof关键字不能比较基本类型的数据。instanceof关键字可以对对象和接口使用。instanceof关键字的比较是基于多态的。不推荐使用instanceof关键字,要多多应用多态。instanceof关键字右边比较的类型只能为类和接口。第17页/共20页小结小结接口,对象通过多态可以使其变得灵活,而接口可以使对象变得更加灵活。接口是基于继承的,通过在编译期和运行期来扮演不同的类型。第18页/共20页练习练习说明抽象类和接口的区别第19页/共20页感谢您的观看!第20页/共20页