真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java開發(fā)中abstractclass和interface有什么區(qū)別

本篇內(nèi)容主要講解“Java開發(fā)中abstract class和interface有什么區(qū)別”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Java開發(fā)中abstract class和interface有什么區(qū)別”吧!

站在用戶的角度思考問題,與客戶深入溝通,找到耒陽網(wǎng)站設(shè)計(jì)與耒陽網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋耒陽地區(qū)。

Java開發(fā)中abstract class 和 interface 有什么區(qū)別?

        含有 abstract 修飾符的 class 即為抽象類,abstract 類不能創(chuàng)建的實(shí)例對(duì)象。含有 abstract 方法的類必須定義為 abstract class,abstract class 類中的方法不必是抽象的。abstract class 類中定義抽象方法必須在具體(Concrete)子類中實(shí)現(xiàn),所以,不能有抽象構(gòu)造方法或抽象態(tài)方法。如果的子類沒有實(shí)現(xiàn)抽象父類中的所有抽象方法,那么子類也必須定義為 abstract 類型。


接口(interface)可以說成是抽象類的一種特例,接口中的所有方法都必須是抽象的。接口中的方法定義默認(rèn)為 public abstract類型,接口中的成員變量類型默認(rèn)為 public static final。下面比較一下兩者的語法區(qū)別:


1.抽象類可以有構(gòu)造方法,接口中不能有構(gòu)造方法。


2.抽象類中可以有普通成員變量,接口中沒有普通成員變量


3.抽象類中可以包含非抽象的普通方法,接口中的所有方法必須都是抽象的,不能有非抽象的普通方法。


4. 抽象類中的抽象方法的訪問類型可以是 public,protected 和(默認(rèn)類型,雖然eclipse 下不報(bào)錯(cuò),但應(yīng)該也不行),但接口中的抽象方法只能是public 類型的,并且默認(rèn)即為 public abstract 類型。


5. 抽象類中可以包含靜態(tài)方法,接口中不能包含靜態(tài)方法


6. 抽象類和接口中都可以包含靜態(tài)成員變量,抽象類中的靜態(tài)成員變量的訪問類型可以任意,但接口中定義的變量只能是 public static final 類型,并且默認(rèn)即為 public static final 類型。


7. 一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,但只能繼承一個(gè)抽象類。


下面接著再說說兩者在應(yīng)用上的區(qū)別:


接口更多的是在系統(tǒng)架構(gòu)設(shè)計(jì)方法發(fā)揮作用,主要用于定義模塊之間的通信契約。而抽象類在代碼實(shí)現(xiàn)方面發(fā)揮作用,可以實(shí)現(xiàn)代碼的重用,例如,模板方法設(shè)計(jì)模式是抽象類的一個(gè)典型應(yīng)用,假設(shè)某個(gè)項(xiàng)目的所有 Servlet 類都要用相同的方式進(jìn)行權(quán)限判斷、記錄訪問日志和處理異常,那么就可以定義一個(gè)抽象的基類,讓所有的Servlet 都繼承這個(gè)抽象基類,在抽象基類的 service 方法中完成權(quán)限判斷、記錄訪問日志和處理異常的代碼,在各個(gè)子類中只是完成各自的業(yè)務(wù)邏輯代碼,偽代碼如下:

Java開發(fā)中abstract class和interface有什么區(qū)別

Java開發(fā)中abstract class和interface有什么區(qū)別
父類方法中間的某段代碼不確定,留給子類干,就用模 板方法設(shè)計(jì)模式。

到此,相信大家對(duì)“Java開發(fā)中abstract class和interface有什么區(qū)別”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!


當(dāng)前名稱:Java開發(fā)中abstractclass和interface有什么區(qū)別
文章路徑:http://weahome.cn/article/ihsdid.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部