Hedley

Stay Hungry, Stay Foolish.

扑朔迷离浮点运算

此文深入剖析困扰哥已久的浮点数表示和运算。

定义

Java 浮点数定义采纳 IEEE Standard 754 标准:单精度 float 32 位,双精度 double 64 位。本文主要以 float 为例。

荒谬痛苦的内部类

关于

此文简单总结嵌套类 (Nested Class) 的使用场景与一般建议:能使用静态嵌套类 (Static Nested Class) 的时候就不用内部类 (Inner Class)

A nested class is any class whose declaration occurs within the body of another class or interface. A top level class is a class that is not a nested class.

Octopress 搭建记录

本文是小站搭建的流水账记录,收集了各种用到的链接地址。

搭建

  • 参照 octopress 官方搭建手册,一步一步来。到 gem install bundler 时候卡壳,网络不通
  • 修改 RubyGems 镜像,连接通了。但是一直报缺少依赖包的异常,按照提示手动一个个安装完依赖包
  • 安装完毕,修改 _config.yml 配置文件

留言系统

  • 参照这篇文章添加多说评论
  • 修改多说样式,样式代码添加在多说系统的管理后台的基本设置里。代码位于 source/downloads/code/duoshuo.css

访问速度

参照这篇文章替换若干 google 源。

A Glossary of Name Reuse

此文大概就是《Java Puzzlers》中 Classier Pazzlers 一节的简单翻译和整理,粗略总结了 Java 有关命名重复的场景和代码示例。

Overriding

An instance method overrides all accessible instance methods with the same signature in superclasses.

JLS 8.4.8.1

重写的规范定义包括:

  • Context 包括两个类,一个子类,一个父类。
  • 载体必须是实例方法 (instance methods),而非静态方法。
  • 必须是同样签名 (signature) 和返回类型。
  • 重写方法不能缩小可见范围。

重写是面向对象编程的核心概念,是唯一鼓励使用的 Name Reuse 场景。

1
2
3
4
5
6
7
class Base {
    protected void f() { }
}

class Derived extends Base {
    public void f() { } // overrrides Base.f()
}