接口,抽象类,种之间关系

接口,抽象类,类之间关系

       对于初学者很难理解或者记忆[因为接口,抽象类,类在每个语言不同,所以没有什么道理,只是因为需要或者设计目的决定的],甚至很多做了一段时间JAVA人也没有理清楚三者间关系.

         今天,我用通信的域的思想或者说是人类分范畴的思想

 

        首先:  我们看二个词------ 

                           漂亮女人, 女人 

                           外面可以理解漂亮是修饰女人的,外面称"漂亮"为限定词,也称为"窄化词语"

                           怎么理解? 比如定义  女人为集合A

                                                                漂亮女人为集合B

                                                                 得出B 属于集合 A

                                                                 因为漂亮这个词语是集合B元素小于A

   其实都是废话,个人理解

 

  结论 很熟很俗的答案:   漂亮女人是女人     女人未必是漂亮女人[马与白马,这里没有说女人不是漂亮女人是从生活角度看的]

 

  废话结束!

 

  我把: 接口归为一个范畴,

            抽象类一个范畴,   类一个范畴   抽象类和类是兼容的范畴 接口和类以及抽象类不兼容

           自然接口,抽象类,类自己是兼容的[集合A属于集合A]

于是如图所示:

           结论:

                     范畴不同-->是extends只能一次

                     范畴相同-->是implement可以多次

                     二个范畴,接口一个范畴,类与抽象类一个范畴,本身皆自反

 

            各自是自反的[离散数学]extends自己

           接口[一个范畴]可以被抽象类,类[不同范畴]implement多次[范畴不同]

           抽象类,类互相extends[范畴相同]

           

 点击图片放大看   如有不妥请指出