自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 软件构造 | 健壮性和正确性

软件的健壮性和正确性,主要是异常和断言机制

2022-06-11 13:23:59 130

原创 软件构造 | 可维护性

模块化设计的五个rulesSOLID设计原则

2022-06-03 16:59:51 72

原创 软件构造 | 可复用性

对类的复用:白盒框架(继承)和黑盒框架(接口)复用的关键是子类能否安全地替换父类:依据LSP替换原则,子类可以增加方法,不能修改父类方法,可以增加不变性。对于重写的方法,子类的返回值是父类返回值及其子类型。协变和逆变,返回值协变,参数逆变参数不能协变:如果一个对象表示类型是父类,实际类型是子类,那么向对象添加对象就会有问题,比如添加的对象是父类的子类,但不是子类的子类泛型是不支持协变的,ArrayList<String>不是ArrayList<Object>的

2022-05-30 15:31:02 86

原创 软件构造 | 以一个例子实现一个ADT

以停车场管理系统为实例对于ParkingFeild接口:接口中定义通用的方法针对lot类这种不可变数据类型,不可以用地址是否相同判断equals所以需要重写equals方法和hashCode方法回顾 可变数据类型和不可变数据类型:根据数据变化前后,指向的内存地址是否一致,可将数据分为:可变数据类型与不可变数据类型。不可变数据类型被改变之后,会重新分配空间。不可变数据类型需要重写equals和hashcode检查public void checkRep() {

2022-05-24 19:12:43 217

原创 软件构造 | 抽象数据类型的设计

抽象数据类型的设计

2022-05-09 14:57:13 355

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除