自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一个不规范声明函数导致的内存泄漏的排查(C++, Linux)

排查的难点在于这个函数在一个我没有代码权限的动态库里,需要联系该库的负责人协同debug,最终代码也是那位同事改的,我只是定位并指出更正的点,然后努力劝说他去修改。工作中遇到一个软件coredump的问题,并且只是在Linux上会coredump,Windows运行没有任何异常。至于为什么这么写会出问题,有同事分析可能是Windows的编译器更加智能,Linux更加严格,但是我暂时还没有找到最底层的原因,只好先叫它“不规范声明”。并且用到了默认参数,是在声明的时候就创建一个新的对象。将构造函数的声明改为。

2023-06-07 20:20:52 119

原创 Effective Java笔记 - 四种嵌套类

Effective Java笔记 - 四种嵌套类 定义在一个类内部的类叫做嵌套类(nested classes),其存在应仅为它的外部类服务,否则应当定义它为一个top-level类。 四种嵌套类:静态成员类(static member classes),非静态成员类(nonstatic member classes),匿名类(anonymous classes),局部类(local classes)。后四种又叫内部类(inner classes)。 静态成员类 静态成员类是最简单的嵌套类,可以概括为一个普

2021-01-17 15:13:33 175

原创 Effective Java笔记 - 创建对象时扩展参数的几种模式

Effective Java笔记 - 创建对象时扩展参数的几种模式 静态工厂与构造器的一个局限性是遇到大量可选参数时不便于扩展。 传统的方式是使用重叠构造器(telescoping constructor),先提供一个只有必选参数的构造器,然后逐一添加可选参数所对应的构造器。但是这种方法仍然不便于扩展,而且当参数量庞大时代码的实现和阅读都很困难。 另一种方式是JavaBeans模式,先调用无参构造函数,创建出对象,然后用setter方法设置所需的参数。这种方法更简便,但是存在严重缺陷,那就是创建对象的过程被

2021-01-15 09:45:10 204 2

原创 Effective Java笔记 - 静态工厂方法

Effective Java笔记 - 静态工厂方法 静态工厂方法(static factory method)是除构造器外的另一种创建对象实例的途径。(与设计模式中的工厂方法无关。) 例: public static Boolean valueOf(boolean b) { return b ? Boolean.TRUE : Boolean.FALSE; } 使用静态工厂方法而不是构造器的优缺点 优点 静态工厂方法有名字,便于程序的使用和阅读。当类需要多个构造方法时,利用静态方法的重载可以解决单一

2021-01-14 14:05:07 121

空空如也

空空如也

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

TA关注的人

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