Java 抽象类用法 - Java 面向对象编程

抽象类不能实例化,如果将一个类声明为 abstract 就不能创建这个类的对象。但是可以创建具体一个子类的对象。 可以定义一个抽象类的变量,但是它只能引用非抽象子类的对象,例如: Person harry = new Employee("Harry Potter",100D); 这里的 harry 是一个抽象类 Person 的变量,Person 引用了一个非抽象类子类 Student 的实例。

面向对象程序设计(简称 OOP)是当今主流的程序设计泛型。Java 是完全面向对象的,面向对象的程序是由对象组成,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。

面向对象将数据放在第一位,然后在考虑操作数据的算法。

类(class)是构造对象的模板和蓝图,由类构造(construct)对象的过程称为创建类的实例(instance)。

封装(encapsulation)将数据和行为组合在一个包中,并对对象的使用者隐藏了数据的实现方式。对象中的数据称为实例域(instance field),操纵数据的过程称为方法(method)。对于每个特定的类实例(对象),都有一组特定的实例域值。这些值的集合就是这个对象的当前状态(status)。封装的关键在于绝对不能让类中的方法直接访问其它类的实例域,程序仅通过对象的方法与对象数据进行交互。封装可以提高程序的重用性和可靠性。

继承(inheritance)是通过扩展一个类来建立一个新的类,这个扩展后的新类具有所扩展的类的全部属性和方法。

要想使用对象必需首先构造对象,并指定其初始状态,然后对对象应用方法。如下:

Date today = new Date();  
System.out.println(today.toString());  

Date 是 Java 标准库中的一个类,它的对象描述的是一个时间点。通过在构造器前(构造器名和类名相同)加上 new 操作符,构造了一个 Date 对象,并将其赋值给给 today 变量。然后调用 Date 类中的 toString 方法,返回日期的字符串描述,并在控制台打印。


Run