Java中的封装性.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java中的封装性

浅析Java 中的封装性 摘要: oop 思想是整个应用型软件开发的核心,不管使用.net 还是java,只有掌握了oop 思想,才能快速有效地为客户提供企业级的解决方案,而封装性又是oop 思想中不可缺少的基础组成部分,所以在使用java 时,理解和掌握封装性是非常重要的,对以后学习和掌握其他面向对象的编程技术也尤为重要。 关键词: java;封装性;软件开发 中图分类号:tp311.5文献标识码:a 文章编号: 1. 引言 目前, 面向对象的思想被软件开发界广为追捧, 其实,面向对象思想不是高深的理论, 而是根据前人大量编程项目总结出来的一套分析和解决编程方面问题的方法。以面向对象思想为指导, 可以优化java 代码的结构, 更可以让数据库访问模块变得富有弹性—即让代码和模块能更好地适应项目需求的频繁变化。面向对象编程(object oriented programming, 简称oop)描述的是对象之间的相互作用。oop 编程主要有3 大思想,分别是封装、继承、多态。在面向对象编程中, 类作为最小程序单元, 就像以往面向过程编程中函数作为最小程序单元一样。 封装性是面向对象程序设计的原则之一。它规定对象应对外部环境隐藏它们的内部工作方式。良好的封装提高了代码的模块性, 它防止了对象之间不良的相互影响, 这样就使得未来的开发工作变得容易。 2. 定义 封装就是隐藏实现细节, 将属性私有化, 提供公有方法访问私有属性。 类是基于面向对象思想编程语言的基础, 程序员可以把具有相同业务性质的代码封装到一个类里, 通过接口方法向外部代码提供服务, 同时向外部代码屏蔽类里服务的具体实现方式。对象是类的实例, 类一般是个抽象名词, 比如“人类”, 而对象则是具体的物质存在, 比如“张三” 这个人。在现实生活中, 经常会遇到“类” 和“对象” 这些概念, 比如封装了能实现“全自动洗衣机” 功能的洗衣机类。这里, 用户可以使用面板上的按钮, 使用该类里提供的洗衣等服务,并且, 由于该类实现了封装, 所以在使用的时候, 用户可以不用了解其中的自动洗衣原理以及实现机制。 类是同一种类型的对象的抽象, 是某种类型对象的概述和定义; 而对象则是某个类的实例化结果或者叫一种类型的实体。在使用面向对象的思想进行软件开发的过程中, 首先得抽出项目的实体-对象模型: 即首先是实体类的定义、封装。 在java 中, 最基本的封装单元是类, 一个类定义着将由一组对象所共享的行为(数据和代码) .一个类的每个对象均包含它所定义的结构与行为, 这些对象就好象是一个模子铸造出来的。在定义一个类时, 需要指定构成该类的代码与数据, 特别是类所定义的对象叫做成员变量或实例变量。操作数据 的代码叫做成员方法。方法定义怎样使用成员变量, 这意味着类的行为和接口要由操作实例数据的方法来定义。由于类的用途是封装复杂性, 所以类的内部有隐藏实现复杂性的机制。所以java 中提供了私有和公有的访问模式, 类的公有接口代表外部的用户应该知道或可以知道的每件东西。私有的方法数据只能通过该类的成员代码来访问, 这就可以确保不会发生不希望的事情。 3.必要性 建构具有良好封装性能的对象的第一个步骤就是getter/setter 对访问私有数据域。通过一个控制的机制来要求那些要对对象的域进行读和写的其他对象这样去做, 可以加强法定值和内部数据的连贯性。如果有一个域名为duration, 它应该保存一个正整数, 当另一个对象试图进行setduration (-4) 时,就可以给出一个illegalargumentexception。如果将duration 成员设置为公有,就不能防止某人调用yourobject.duration=-4 并搞乱数据的内部连贯性。通过一个例子来理解这个问题: 编写一个教师类, 要求: (1) 具有属性: 姓名、年龄 (2) 具有行为: 自我介绍 (3) 教师的最小年龄要求: 22 岁 public class teacher { public string name; // 教员姓名 public int age; //年龄 /** * 返回自我介绍的内容 */ public string introduction () { return “ 大家好!我是” + name + “,我今年” + age+”“ ; }} 编写一个测试类, 要求: 实例化一个教员对象, 并对其初始化, 并在控制台输出该教员的自我介绍。 public class teachertest { public static void main (string [ ] args) { teacher teacher = new teacher () ; teacher.name = “ 张三”

文档评论(0)

didala + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档