`
Wallian_hua
  • 浏览: 29059 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

类设计技巧.一些基础支持..(整理篇.)

阅读更多

想要使用OOP一定要清楚对象的三个主要的特性

   1.对象的行为---------可以对对象施加哪些操作,或可以对对象施加那些方法.?

   2.对象的状态---------当施加方法时,对象如何响应!!!

   3.对象的标识---------如何区分具有相同行为和状态的不同对象!!!

   同一个类的所有对象实例由于支持相同行为而具有相同的行为.. 而具有家族的相似性.. 对象的行为是用可调用的方法定义的..

  此外.每个对象都保存着描述当前特征的信息.这就是对象的状态.对象的状态可以能会随着时间而发生改变.但是这种改变不会自发的.. 对象的状态必须通过调用方法实现..否则就会破坏他的封装性..

  但是对象的状态并不能完全描述一个对象.每个对象都有一个唯一的身份...

  需要注意的是.作为一个类的实例.每个对象的表示永远是不同的.但状态却常常存在着差异..

 

类之间的关系.

  1.依赖. uses-a

  2.聚合 has-a

  3.继承 is-a

  (uses-a)依赖是一种最明显的.最常见的关系...  如果一个类的方法操纵了一个类的对象.那么我们就说一个类依赖于另外一个类.

  (has-a)例如.. 一个A对象包含了一些B对象.

 (is-a)也就是说. 如果A类扩展了B了.A类不但包含了从B类继承过来的方法..还会有一些额外的功能.

 

重载.

   如果多个方法有相同的名字.不同的参数.便产生了重载.......

  如果一个类A提供了一个显示的构造方法..而且是带参数的那么.你new一个空参数的构造那么这时候就会报erro..

 所以如果你想要new 一个空的构造器.那么.你必须声明一个空的构造器...

 在构造器里面可以用this()调用该类里面的其他构造器..

例如

java 代码
  1. //伪代码   
  2.   
  3. private String a="";   
  4.   
  5. public A(){   
  6.    this("a");   
  7. }   
  8.   
  9. public A(String a)   
  10. {   
  11.   this.a =a;   
  12. }  

 

还有2个非常重要的2点就是

1. 静态初始化快.

例如..

java 代码
  1. //伪代码.   
  2. static  
  3. {   
  4.  Random ro=new Random();  
  5.   nextId=ro.nextInt(100);   
  6. }  

 

2.对象初始化快..

例如.

java 代码
  1. //伪代码   
  2. {   
  3.   id=nextId;   
  4.   nextId++;   
  5. }  

3.实例初始化

 

java 代码
  1. //伪代码   
  2. private String name;//以前我们是这样声明一个变量.. 但没有初始化..   
  3. private String name="";//这就是初始化的一个变量  

包的命名 一般包的命名都是以自己的玉米来命名.. 而且是逆序的...

例如

java 代码
  1. package com.wallian-hua.javaeye.codejava  

这个都是个人的编程习惯...

 

类设计技巧..

  1.一定将数据设计为私有的..

     最重要的;绝对不要破坏封装性.

2.一定要对数据初始化.

   JAVA不对局部变量初始化.但是会对对象的实例域进行初始化...

3.不要在类中使用过多的基本数据类型.

  就是说.用其他可以代替多个相关的数据类型的使用,这样会使.类更加容易修改.

例如..用一个称为Address的类替换下面的Customer类中的实例域..

java 代码
  1. //伪代码   
  2.   
  3. private String street;   
  4. private String city;   
  5. private state;   
  6. private int zip;  

4.不是所有的域都需要独立的域访问器.或者是更改器.

5.使用标准格式进行类的书写跟定义.

  采用下面的顺序书写类的内容.

  5.1.共有访问特性部分.

  5.2.包作用域访问特性部分.

  5.3.私有访问特性部分.

 在每一个部分中.应该按照下列顺序列出..

  5.4静态域.

  5.5.实例域

  5.6.实例方法.

  5.7.静态方法.

6.将责任过多的类进行分解... (但是不要盲目的分解..根据个人需要.. )

 

                                                                好了. 今天整理到这里..  today is good day....!      ^_^

分享到:
评论

相关推荐

    《猜字谜》教学设计整理.docx

    《猜字谜》的教学设计注重寓教于乐,通过猜谜活动和互动游戏,使学生在轻松愉快的氛围中学习汉字,培养他们的思维能力和语言运用能力,为后续的汉字学习打下坚实基础。同时,教师需关注个体差异,提供个性化的支持,...

    ChatGPT进阶使用技巧.zip

    9. **心理咨询**:虽然不能替代专业心理咨询,但ChatGPT能提供一些基础的心理建议和情绪支持。 10. **知识验证**:当对某个答案不确定时,可以询问ChatGPT来验证信息的准确性,但需要注意,它并非始终可靠,还需...

    《Java语言程序设计》(基础篇)例题源代码(程序清单)

    《Java语言程序设计》(基础篇)是一本深入浅出介绍Java编程的教材,其例题源代码覆盖了从基础到进阶的关键知识点,旨在帮助读者掌握编程基础,提升编程能力。以下是根据提供的文件信息整理出的相关Java知识点: 1....

    软考网络规划师论文技巧及范文.rar

    《网络规划师论文技巧及范文》是一份针对软考高级网络规划师考试的重要参考资料,由希赛软考小编精心整理。这份压缩包包含了全面的论文写作指导和实例,旨在帮助考生掌握论文格式、提高论文撰写能力,从而在考试中...

    从道藏目录进MySQL说Excel公式和数据库范式技巧.pdf

    《从道藏目录进MySQL说Excel公式和数据库范式技巧》这篇文章主要探讨了如何利用Excel和MySQL处理中文信息,特别是传统文化文献数字化的过程。文章以《道藏目录》为例,阐述了在数据转换和处理中的关键技术与方法。 ...

    GGJ2013钢筋CAD导图技巧.doc

    《GGJ2013钢筋CAD导图技巧》 在建筑行业中,GGJ2013是一款常用的钢筋算量软件,能够帮助工程师高效地处理钢筋结构的计算与设计。本篇文档将详细介绍如何利用该软件进行CAD图纸的识别与转换,以实现钢筋构件的精确算...

    2、简单数据的收集和整理.docx

    本篇文章将详细讲解简单数据的收集和整理过程,旨在帮助读者掌握基本的数据处理技巧。 首先,我们要理解数据的类型。数据可以分为定量数据和定性数据。定量数据是可以通过数字来表示的,例如人口数量、销售额等;...

    Java工作实用篇.pdf

    ### Java工作实用篇知识点概述 #### 1. Java生成带Logo及名称的二维码 - **技术背景**: 在当前数字化时代,二维码被广泛应用于各种场景,包括但不限于产品追踪、广告推广等。利用Java来生成带有公司Logo及商品名称...

    这是一篇关于计算机毕业设计的写作技巧

    ### 计算机毕业设计写作技巧详解 #### 一、选择合适的题目 选择一个恰当的毕业设计题目是成功的关键一步。一个好的题目不仅能够反映你对专业知识的理解和掌握程度,还能体现你的创新能力。在选题时,可以从以下几...

    Delphi XE5 XE6移动开发资料整理.rar

    10. **文档和社区支持**:Delphi XE5和XE6拥有丰富的在线文档和社区支持,其中包含的300篇左右的技巧文章,涵盖了从基础概念到高级特性的各种主题,帮助开发者解决开发过程中遇到的问题。 综上所述,Delphi XE5和XE...

    市场调查资料的整理方法概述.pptx

    本篇主要探讨市场调查资料的整理方法,包括资料整理的意义、程序及步骤,以及相关的分析技巧。 首先,市场调查资料的整理具有重大意义。它是将实地调查阶段收集的杂乱无章的数据转化为有价值信息的关键步骤。通过...

    计算机实习报告6篇.docx

    在TCL数码电子事业本部的实习,实习生可以接触和学习到计算机硬件基础知识、DIY技巧、路由器和服务器配置等实用技能,同时也能学习到成功人士的管理经验和市场策略。实习期间,不仅技术知识得以强化,更重要的是学会...

    MySql整理(基础进阶运维).docx

    首先,基础篇主要涉及MySQL的基本语法和分类。DDL(Data Definition Language)用于创建和修改数据库对象,如表格、视图等。DML(Data Manipulation Language)则用于插入、更新和删除数据。DQL(Data Query ...

    精品课《Visual-FoxPro-程序设计》实验指导vfp6.0(使用).pdf

    在本次的知识点整理中,我们将关注Visual FoxPro (VFP) 6.0这一程序设计课程。VFP是一种数据驱动的应用程序开发环境,它集成了数据库管理系统和开发工具,广泛应用于Windows平台上的桌面和网络应用程序开发。本次...

    述职报告模板合集8篇.doc

    4. **后台功能开发**:尝试开发后台求购信息录入页面,参考了前台页面并考虑了用户需求,优化了录入流程,体现了对用户体验的关注和后台系统设计的基础知识。 5. **日常维护与团队协作**:参与部门的例行工作任务,...

    政治教学计划集合八篇.docx

    通过上述关键知识点的梳理,我们可以看到政治教学计划不仅关注学生对基础知识的掌握,还重视学生思维能力的培养和解题技巧的提升。同时,通过团队协作和科学规划,确保教学活动的有效性和针对性,以达到提高学生综合...

    大学生各种毕业论文答辩设计和答辩话术ppt(个人整理总共13篇)

    这篇资料集包含了13篇个人整理的毕业论文答辩设计PPT,是学生们宝贵的参考资料。以下是关于如何有效准备毕业论文答辩设计和答辩话术的一些关键知识点: 1. **PPT设计原则**: - **简洁清晰**:内容应当精炼,避免...

    长江作文十篇.docx

    在这个背景下,“长江作文十篇.docx”不只是一份文档,它代表了使用现代技术手段提升写作能力的实践。本文将深入探讨如何通过技术手段提高写作技巧,尤其是在整理和编辑像“长江作文十篇”这样的作品时,技术所发挥...

    关于中考复习计划模板集合八篇.docx

    - 对于基础薄弱的学生提供更多的辅导和支持。 2. **理清知识点**: - 整理和梳理教材中的核心知识点。 - 强调阅读理解的训练方法和技巧。 3. **讲练结合**: - 讲解重点知识点,如字词、综合性学习、文言文等...

Global site tag (gtag.js) - Google Analytics