Java基础——类、接口、抽象类、对象

时间:2022-12-24 18:20:19

初学Java时,对这几个概念似懂非懂,一知半解。在这里总结下。


  1. 类:是一种抽象的集合,是对现实世界中具备共同特征的实体的集合抽象。
    类的关键字:class。类可以实例化,指某一具体对象
    类的定义形式如下
public class Object {
//具体代码省略
}

举个栗子:
银行可以是一个类,是对所有银行对象的抽象。
2. 接口
接口:一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为。
接口的关键字:interface,接口不可以实例化为具体对象,是对共同行为的一个抽象。
接口定义如下形式如下

public interface Bird {
public void fly();
public void eat();
}

可以把Bird看做一个接口,所有的Bird都具有fly的共同特征,Bird的接口抽象了fly的动作,并没有具体的实现。所以Bird只是定义了抽象的共同特征,不提供具体的实现
3. 抽象类
抽象类:是一种介于接口和类的中间状态。抽象类实现接口,并实现接口的部分抽象方法。
抽象类的关键字:abstract。抽象类与接口一样不能实例化为对象。

public abstract class AbstractBird implements Bird {
/**实现Bird的接口方法fly,提供具体的实现
*/

public void fly(){
System.out.println("I can fly");
}
public void eat();
}
  1. 对象
    对象对应现实世界中的具体事物,表示一个真实存在的具体物体。
    所有的对象,不论是显式还是隐式,都继承与Object类。

  2. 类、接口、抽象类、对象之间的关系
    类:是对现实世界共同特征的实体的抽象,一个类代表具有共同特征的实体。类可以通过实例化创建具体对象
    接口:是对具有共同行为的特性的抽象,一个接口表示所有实现这个接口的具体类都具有该接口定义的共同特征。不同的具体类对接口方法的具体实现可能不同。
    抽象类:是对接口的一种部分实现,为具体类实现公共的接口方法。具体的类继承抽象类,同时继承接口的方法,实现抽象类的抽象方法。
    对象:是指一个具体的实体,具有一定的特征(属性),可以实现一定的功能(方法)。
    类与接口:是对客观的两个不同方面的抽象。
    类是共同特征的实体的抽象描述,包括属性、方法。
    接口是对共同行为特征的抽象描述,只定义了共同的抽象行为特征。

以上是本人对这些概念的理解,整理。可能有偏差,欢迎指正、共同讨论。
下一篇打算写下关于面向对象的东西。