在有些情况下,一个对象会有一些重要的性质,在他们没有被赋值之前,对象不能作为一个完整的产品使用。比如,一个电子邮件有发件人地址、收件人地址、主题、内容、附件等,最起码在收件人地址没有赋值之前,这个电子邮件是不能发出的。在有些情况下,一个对象的一些性质必须按照某个顺序赋值才有意义,在某个性质没有赋值之前,另一个性质则无法赋值。比如,建造房子,一定是要先打地基,然后砌墙,最后封顶。传统方式:这里我们以建造房屋为例来做说明。首先看传统方式的建造房屋的方式:抽象类:packagecom.charon.builder;/***@className:AbstractHouse*@description:抽