网络程序设计(java)第05章泛型和枚举.ppt
《网络程序设计(java)第05章泛型和枚举.ppt》由会员分享,可在线阅读,更多相关《网络程序设计(java)第05章泛型和枚举.ppt(20页珍藏版)》请在三一办公上搜索。
1、2023/11/16,1,网络程序设计Network Programming第五章 泛型和枚举,赵建立山东科技大学信息科学与工程学院College of Information Science and Engineering,Shandong University of Science and Technology,2023/11/16,2,本章总体纲要,泛型枚举,泛型程序设计,泛型程序设计,简单地说就是使用模板的程序设计法。将一些常用的数据结构(比如链表,数组,二叉树)和算法(比如排序,查找)写成模板,以后则不论数据结构里放的是什么对象,算法针对什么样的对象,则都不必重新实现数据结构,重新编
2、写算法。标准模板库(Standard Template Library)就是一些常用数据结构和算法的模板的集合。主要由 Alex Stepanov 开发,于1998年被添加进C+标准有了STL,不必再从头写大多的标准数据结构和算法,并且可获得非常高的性能。,模板引子,1.假如设计一个求两参数最大值的函数,在实践中我们可能需要定义四个函数:int max(int a,int b)return(a b)?a,b;long max(long a,long b)return(a b)?a,b;double max(double a,double b)return(a b)?a,b;char max(c
3、har a,char b)return(a b)?a,b;2.这些函数几乎相同,唯一的区别就是形参类型不同3.需要事先知道有哪些类型会使用这些函数,对于未知类型这些函数不起作用,模板的概念,所谓模板是一种使用无类型参数来产生一系列函数或类的机制。若一个程序的功能是对某种特定的数据类型进行处理,则可以将所处理的数据类型说明为参数,以便在其他数据类型的情况下使用,这就是模板的由来。模板是以一种完全通用的方法来设计函数或类而不必预先说明将被使用的每个对象的类型。通过模板可以产生类或函数的集合,使它们操作不同的数据类型,从而避免需要为每一种数据类型产生一个单独的类或函数。,C+求最大值模板函数实现,1
4、.求两个数最大值,使用模板template T max(T a,T b)return(a b)?a,b;2.template(模板函数形参表)/函数定义体,6,模板优缺点,函数模板方法克服了C语言解决上述问题时用大量不同函数名表示相似功能的坏习惯克服了宏定义不能进行参数类型检查的弊端克服了C+函数重载用相同函数名字重写几个函数的繁琐缺点,调试比较困难一般先写一个特殊版本的函数运行正确后,改成模板函数,7,2023/11/16,8,Java泛型定义格式,不带泛型的类类修饰词列表 class 类名 extends 父类名 implements 接口名称列表 类体具有泛型特点的类类修饰词列表 cla
5、ss 类名 extends 父类名 implements 接口名称列表 类体,2023/11/16,9,泛型定义格式,不带泛型的接口接口修饰词列表 interface 接口名 extends 接口名称列表 接口体具有泛型特点的接口接口修饰词列表 interface 接口名 extends 接口名称列表 接口体,2023/11/16,10,类型参数的定义格式,类修饰词列表 class 类名 extends 父类名 implements 接口名称列表第一种:类型变量标识符Public class J_Add 第二种:类型变量标识符 extends 父类型Public class J_Add 第三种
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络程序设计 java 05 章泛型 枚举
链接地址:https://www.31ppt.com/p-6600058.html