Java- 关于对象的思考

Java- 关于对象的思考

  1. 不可变对象一旦创建,就不能改变。为防止用户修改对象,可以定义不可变类。定义不可变类需满足以下条件:
    1. 所有数据域都是私有的。
    2. 没有修改器方法。
    3. 没有一个访问器方法,它会返回一个指向可变数据域的引用。
  1. 实例变量和静态变量的作用域是整个类,与变量在何处声明无关。实例变量和静态变量可以在类中的任意位置声明。为保持一致,最好在类的起始位置声明它们。
  2. 关键字 this 可用于表名调用对象。关键字 this 也可以用在构造方法中,调用同一个类的另一个构造方法。
  3. 面向过程范式重在设计方法,面向对象范式将数据和方法耦合在对象中。使用面向对象范式的软件设计重在对象和对象上的操作。面向对象方法结合了面向过程范式的功能以及将数据和操作集成在对象中的特点。
  4. 类的设计原则:
    1. 内聚性:类应该描述一个单一的实体,而所有的类操作应该在逻辑上相互配合,支持一个连贯性的目标。
    2. 一致性:遵循标准 Java 程序设计风格和命名习惯。给类、数据域和方法选择有信息量的名字。流行的风格是讲数据声明置于构造方法之前,并且将构造方法置于方法之前。
    3. 封装性:一个类应该使用 private  修饰符隐藏其数据,以免用户直接访问它。这使得类更易于维护。可以给数据域提供 get 和 set 方法。
    4. 清晰性:用户可以以多种不同组合和顺序,在许多不同环境中结合多个类。因此,应该设计一个类,这个类应该没有对用户使用目的以及使用时间的限制,设计属性以容许用户按值的任何顺序和任何组合来设置,所设计的方法实现的功能应该与它们出现的顺序无关。
    5. 完整性:类经常是为许多不同用户的使用而设计的。为了能在一个广泛的应用中使用,一个类应该通过属性和方法提供多种方案以适应用户的不同需求。
    6. 实例和静态:依赖于类的具体实例的变量或方法应该是一个实例变量或方法。如果一个变量被类的所有实例所共享,那就应该将他声明为静态的。

你可能感兴趣的:(Java- 关于对象的思考)