07_面向对象中的编程安全解说.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
以windows“任务管理器”为例,如图所示: 当你打开任务管理器后,如果再次打开任务管理器,就使用前面已经打开的对象。就可以用单例模式来进行模拟。 代码如TaskManagerTest.java 。 运行,显示效果为: 当然这只有在确信程序不再需要任何多于一个的实例的情况下。通过单例模式可以做到: 确保一个类只有一个实例被建立; 提供一个对对象的全局访问指针,在不影响单例类的客户端的情况下允许将来有多个实例;等等。 单例模式在其他场合,如数据库连接池、共享对象方面,可以起到提高系统性能的作用。 小结 本章主要介绍面向对象中的安全编程。涉及面向对象、内存的分配与释放、对象序列化安全、静态成员安全等,最后用单例模式阐述了静态成员对提高系统性能所作的贡献。 练习 1:写一段静态成员不安全的代码。 2:对第1题提出解决方案。 3:怎样获取序列化对象中的字段信息? 4:对象序列化过程中,怎样保证安全? 5:在C和Java中怎样回收内存? 6:单例模式为什么能提高程序性能?有何劣势? 第七章 面向对象中的编程安全 面向对象(Object Oriented,OO)是目前最流行的软件开发方法之一,也是当前计算机软件工程界关心的重点,从90年代开始,它就慢慢变成了软件开发方法的主流。目前,面向对象的概念和应用,已经不仅仅集中于程序设计和软件开发,而是扩充到计算机应用的其他应用场合,如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。 面向对象强调人类在日常的思维逻辑中经常采用的思维方法与原则,其中的重要概念如抽象、分类、继承、聚合、多态等,都和我们的生活息息相关,这也成为面向对象思想流行的原因。本章主要介绍面向对象中的安全编程。涉及面向对象,内存的分配与释放,静态成员安全等几个方面。 7.1 面向对象概述 7.1.1 面向对象基本原理 面向对象,可以说是目前最流行的软件开发方法之一,目前大多数的高级语言都支持面向对象,该思想也是用日常生活中的现象开模拟软件开发的过程。面向对象包括两个方面的范畴: ?? 面向对象方法学; ?? 面向对象程序开发技术。 其中,面向对象方法学是面向对象程序开发技术的理论基础。从面向对象方法学的理论,可以设计出类似人类思维方式和手段的面向对象程序设计语言,从而延伸出面向对象程序开发技术,使得程序开发过程非常类似于人类的认知。通过面向对象的方法学和面向对象的程序开发技术开发出的软件,具有模块化特色突出、可读性强、易维护性强等优点。 在面向对象的方法学中,基于人类对客观世界的认知规律、思维方式和方法,提取出针对软件开发的如下抽象认识: ?? 客观世界由各种各样的实体组成,各自发挥作用,相互进行通信,这些实体称为对象; ?? 每个对象都保存了各自的内部状态,具有一定的功能动作;由于外界其他对象或者外部环境的影响,对象本身依据通信机制,根据具体情况作出不同的反应; ?? 多个相似对象,如果属性和功能动作性质类似,可以将其划分为一类;类与类之间可以有继承关系; ?? 复杂的对象可以由相对简单的对象通过一定的方式组合而成; ?? 对象之间可以通过各种方法进行通信;等等。 总而言之,一系列简单或复杂的对象进行组合,其问的相互作用和通信,构成了各种系统,构成了人们所面对的客观世界。 7.1.2 面向对象的基本概念 不管什么样的语言,只要支持面向对象,实际上是利用了面向对象基本思想,其中,最基本的概念有以下几个: 1:对象(Object)。对象构成客观世界的一个个实体,从最简单的字符串到复杂的软件系统等,均可看作对象,广义上,对象不仅能表示具体的实体,还能表示抽象的规则或事件等。 对象具有两个方面的特点: 能够保存一定的状态,由“属性(attribute)”来表达; 能执行一定的动作,“方法(method)”来表达。 2:类(class)。类是用于描述同一类型的对象的一个抽象的概念,类中定义了这一类对象所应具有的属性和方法。多个对象的抽象成为类,类的具体化就是对象,通常的说法,创建一个对象实际上就是将类实例化。 3:消息和方法。消息是指对象之间进行通信的数据或者数据结构。在通信的过程中,一个消息发送给某个对象,实际上相当于调用另一个对象的方法,消息可以是这个方法的参数。 4:继承(Inheritance)。继承性是指子类自动共享父类属性和方法的机制。继承的思想来源于:在定义和实现一个新的类时,可以将一个已经存在的类作为父类,新类的定义在这个父类的基础之上进行,把这个父类中的属性和方法作为自己的属性和方法,并可加入若干新的属性和方法。继承性是面向对象程序设计语言不同于其它语言的重要特点,是其他语言所没有的。 在类的继承中,如

文档评论(0)

挑战不可能 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档