最为基础的Java知识

1.接口与抽象类

  资料:https://www.jianshu.com/p/7efced731cab

   定义类的过程就是抽象与封装的过程。而接口与抽象类则是对实体类更高一层次的抽象,仅仅是定义公共行为和特征规范。

   抽象类被继承时候,体现的是 is-a的关系。抽象类可以定义普通方法,继承抽象类的时候,可以共用该方法。接口是can-do关系

(模板式设计)

abstract class的核心在于,我知道一类物体的部分行为(和属性),但是不清楚另一部分的行为(和属性),所以我不能自己实例化。还是刚才那个例子,如果你有个abstract class叫哺乳动物,那么你可以定义他们胎生,恒定体温等共同的行为,但是具体“叫”这个行为时,你得留着让非abstract的狗和猫等等子类具体实现。

(契约式设计)

interface的核心在于,我只知道这个物体能干什么,具体是什么不需要遵从类的继承关系。比如上述的“玩耍”interface,狗有狗的玩法,猫有猫的玩法,妖魔鬼怪机器人都可以玩耍,只要你告诉我这个物体有玩耍接口,我就能让它玩起来(๑•̀ㅂ•́) ✧

  


 

2.Java的单继承

   Java中利用单继承的形式,避免继承泛滥,循环继承等情况

  可以这么考虑,如果有两个父类,两个父类里有一个相同的方法,那么作为子类应该怎么继承这个方法?父类1的还是父类2的?

   (只能有一个父亲。不能是人又是狗)

发布了29 篇原创文章 · 获赞 34 · 访问量 8140

猜你喜欢

转载自blog.csdn.net/weixin_39634532/article/details/103300253