对象,类,抽象类,接口

初学,发现错误望指正。
AbstractClass      Class    Object
# 抽象类,类,对象,从右往左依次抽象化。将存在的实例抽象化,提取公共部分。
public abstract class Animal {}

public abstract class Dog extends Animal {}

public class Dog2Ha extends Dog {}




Interface    Interfaceimpl   Class
# 接口,接口实现,类,自左向右以此具体化。将规定好的接口具体化,延伸细节。
public interface AutoCloseable {}

public interface Closeable extends AutoCloseable {}

public final class Scanner implements Iterator<String>, Closeable{}

抽象类和接口的区别:
A:成员区别
	抽象类:
		成员变量:可以变量,也可以常量
		构造方法:有
		成员方法:可以抽象,也可以非抽象
	接口:
		成员变量:只可以常量
		构造方法:无
		成员方法:只可以抽象
		
B:关系区别
	类与类
		继承,单继承,多层继承
	类与接口
		实现,单实现,多实现
	接口与接口
		继承,单继承,多继承
		
C:设计理念区别
	抽象类 被继承体现的是:”is a”的关系。抽象类中定义的是该继承体系的共性功能。
	接口 被实现体现的是:”like a”的关系。接口中定义的是该继承体系的扩展功能。
https://zhuanlan.zhihu.com/p/115768659
原文地址:https://www.cnblogs.com/srczhang/p/13518218.html