【337天】我愛刷題系列096(2018.01.08)

叨叨兩句

  1. ~

牛客網——java專項練習075

1

不能用來修飾interface的有( )(僅限外部接口)
正確答案: A C D 你的答案: A C (錯誤)
A private
B public
C protected
D staticjava

另外一道題考察: 在 jdk1.8版本下不能修飾interface的修飾符有哪些,
private和protected是不能的,爭議在於static,1.8版本支持static修飾接口的方法

2

關於AOP錯誤的是?
正確答案: C
A AOP將散落在系統中的「方面」代碼集中實現
B AOP有助於提升系統可維護性
C AOP已經表現出將要替代面向對象的趨勢
D AOP是一種設計模式,Spring提供了一種實現設計模式

AOP和OOP都是一套方法論,也能夠說成設計模式、思惟方式、理論規則等等。 
AOP不能替代OOP,OOP是obejct abstraction,而AOP是concern abstraction,前者主要是對對象的抽象,諸如抽象出某類業務對象的公用接口、報表業務對象的邏輯封裝,更注重於某些共同對象共有行爲的抽象,如報表模塊中專門須要報表業務邏輯的封裝,其餘模塊中須要其餘的邏輯抽象 ,而AOP則是對分散在各個模塊中的共同行爲的抽象,即關注點抽象。一些系統級的問題或者思考起來總與業務無關又多處存在的功能,可以使用AOP,如異常信息處理機制統一將自定義的異常信息寫入響應流進而到前臺展現、行爲日誌記錄用戶操做過的方法等,這些東西用OOP來作,就是一個良好的接口、各處調用,但有時候會發現太多模塊調用的邏輯大都一致、而且與核心業務無大關係,能夠獨立開來,讓處理核心業務的人專一於核心業務的處理,關注分離了,天然代碼更獨立、更易調試分析、更具好維護。 
核心業務仍是要OOP來發揮做用,與AOP的側重點不同,前者有種縱向抽象的感受,後者則是橫向抽象的感受, AOP只是OOP的補充,無替代關係
相關文章
相關標籤/搜索