Java中类的设计技巧】的更多相关文章

1)  一定要将数据设计为私有: 不要破坏封装性.有时需要编写一个访问器或更改器方法,但是最好还是保持实例域的私有性.数据的表示形式可能会改变,但他们的使用方式却不会经常发生变化.当数据保持私有时,他们的表示形式变化不会对类的使用者产生影响,即使出现bug也易于检测. 2)  一定要对数据初始化 Java不对局部变量进行初始化,但是会对对象的实例域进行初始化.最好不要依赖于系统的默认值,而是应该显式的初始化所有的数据. 3)  不要类中过多的使用基本的数据类型 就是说用其他的类代替多个相关的基本…
关于组合 和 集成 先放两篇文章:这两篇文章写的太好了. http://blog.csdn.net/u013905744/article/details/51752044    Java的组合(持有对象)与继承的区别 http://blog.csdn.net/ycjnx/article/details/40952969  java继承和组合的区别,看两个例子,你就明白了 然后下面 我就贴出代码,给出一些具体的实例: 下面贴出代码: IModel 接口: package com.etoak.she…
摘自<Java核心技术>卷I:基础知识 p140 第4章对象与类 - 类设计技巧 1)一定将数据设计为私有. 最重要的是:绝对不要破坏封装性.有时候,需要编写一个访问器方法或更改器方法,但是最好还是保持实例域的私有性.很多惨痛的经验告诉我们,数据的表示形式很可能会改变,但它们的使用方式却不会经常发生变化.当数据保持私有时,它们的表示形式的变化不会对类的使用者产生影响,即使出现bug也易于检测. 2)一定要对数据初始化. Java不对局部变量进行初始化,但是会对对象的实例域进行初始化.最好不要依…
面向对象的编程思想学习,面向对象内容的三条主线;1.java类及类的对象2.面向对象的三大特征3.其他关键字学习内容:3.1面向对象与面向过程面向对象与面向过程在应用上的区别 Java中类的概念与设计类与类之间的关系 面向对象的思想概述程序员从执行者转化为指挥着Java类及类的成员…
1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体.在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体. 这里的实体可以理解为基本表.明确这种对应关系后,对我们设计录入界面大有好处. [例1]:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情况表.社会关系表.工作简历表.这就是“一张原始单证对应多个实体”的典型例子. 2. 主键与外键 一般而…
blog.sunnyxx.com 我是前言 学习objc时,尤其是先学过其他编程语言再来看objc时,总会对objc的类声明的关键字interface感到有点奇怪,在其它面向对象的语言中通常由class关键字来表示,而interface在java中表示的却大约相当于objc的protocol,这个关键字的区别究竟代表了objc语言的设计者怎样的思想呢,在objc类设计中需要注意哪些问题呢?接下来对这个问题进行一些思考和探究. interface? 先来段Wiki: In object-orien…
在java中类和类之间的关系基本上有依赖.关联.聚合.组合等 一.继承关系     继承指的是一个类(称为子类.子接口)继承另外的一个类(称为父类.父接口)的功能,并可以增加它自己的新功能的能力.在Java中继承关系通过关键字extends明确标识,在设计时一般没有争议性.在UML类图设计中,继承用一条带空心三角箭头的实线表示,从子类指向父类,或者子接口指向父接口. 二.实现关系     实现指的是一个class类实现interface接口(可以是多个)的功能,实现是类与接口之间最常见的关系.在…
目录 1.阅读源码之前的思考 2.从 Broker 启动流程看 DLedger 2.1 构建 DefaultMessageStore 2.2 增加节点状态变更事件监听器 2.3 调用 DefaultMessageStore 的 load 方法 3.DLedgerCommitLog 详解 3.1 核心类图 3.2 构造方法 3.3 load 3.4 recover 4.从消息追加看 DLedger 整合 RocketMQ 如何实现无缝兼容 5.从消息读取看 DLedger 整合 RocketMQ…
java里为什么要序列化?http://zhidao.baidu.com/link?url=7_wAQ8eAl28vcJPE5OKM5Y0Bo4aINNQokHhRmI9XPszEoTO5QF-gNbOTHPzU4e8JMxQ2FYFjU5kuUgtSIPYYN_ -- :57轻风晓雪 | 浏览 次 编程语言java 1不序列化是二进制流,序列化也是二进制流,有什么不同?最后在计算机里不都是0和1保存嘛?还是说不序列化也可以恶保存,就是没有序列化保存的后好什么的? 2比如我写记事本里写了一篇文章…
0.前言 本次博客针对的是暑假学习java(面向对象设计)的前三次作业的小结,第一次作业:7-1 对三个整数排序 7-2 对四个整数排序 7-3 对十个整数进行排序 7-4 对多个整数进行排序 第二次作业:7-1 判断两个数组是否完全相同 7-2 判断两个数组是否相同 7-3判断数组中是否存在四个连续相等的数 7-4合并两个有序数组为新的有序数组 7-5 对整型数据排序 第三次作业:7-1 逆序输出英文句子 7-2 用类解一元二次方程式 7-3 创建账户类Account 1.作业过程总结: ①总…