1. 程式人生 > >Spring bean 的繼承與Java 繼承的區別

Spring bean 的繼承與Java 繼承的區別



     引言:最近在學習spring,感覺還是很有收穫的,順便整理了下知識點,以後沒事就來看看,學習學習...

        Spring 中的bean 繼承與Java 中的繼承截然不同。前者是例項與例項之間引數值的延續,後者則是從一般到特殊的細化。前者是物件與物件之間的關係,後者是類與類之間的關係。

因此, Spring 中bean 的繼承和Java 中bean 的繼承有如下區別:

 1、Spring 中的子bean 和父bean 可以是不同型別,但在Java 中的,子類是對父類的加強,是一種特殊的父類。
 2、Spring 中bean 的繼承是例項之間的關係,主要表現為引數值的延續:而Java 中的繼承是類與類之間的關係,主要表現為方法及屬性的延續。
 3、Spring 中子bean 不可作父bean 使用,不具備多型'性:而Java 中的子類例項完全可當成父類例項使用。

相關推薦

Spring bean繼承Java 繼承區別

      引言:最近在學習spring,感覺還是很有收穫的,順便整理了下知識點,以後沒事就來看看,學習學習...         Spring 中的bean 繼承與Java 中的繼承截然不同。前者是例項與例項之間引數值的延續,後者則是從一般到特殊的細化。前者是物件與物

Scala繼承Java區別

在之前的筆記Java靜態屬性和方法的繼承問題中,通過具體的實驗證明,在子類中重寫父類的欄位時並沒有覆蓋父類的欄位,只是隱藏了父類的欄位。而在scala中則不同,scala子類的同名欄位會重寫且覆蓋父類的同名欄位,這裡做了個簡單實驗,並記錄下來。 Paren

C++中繼承組合的區別

物件和類是C++中的重要內容,物件(Object)是類(Class)的一個例項(Instance)。面向物件設計的重點是類的設計,而不是物件的設計。對於C++程式而言,設計孤立的類是比較容易的,難的是正確設計基類及其派生類。這就和“繼承”(Inheritance)和“組合”(Composition)

繼承派生的區別和聯絡

繼承與派生其實是同一過程從不同的角度看,我們將保持已有類的特性而構造新類的過程稱為繼承,說白了繼承的目的就是實現原來設計與程式碼的重用,希望儘量利用原有的類。然而當新的問題出現,原有程式無法解決或不能完全解決時,需要對原有程式進行改造,在已有類的基礎上新增自己的特性而產生新類的過程稱為派

python中的幾個高階問題詳解(__init__,裝飾器執行步驟,@staticmethod和@classmethod區別,單例模式,魔法方法,object繼承繼承區別

第一個問題,init 在定義一個類時,什麼時候用__init__函式,什麼時候不用,用不用有什麼區別? 首先__init__是為了初始化用的,但是初始化的時候不一定要用這個,直接定義也是可以的,比如 class A(object): test_a = '123' 而我們用__

C++虛繼承普通繼承區別

虛繼承的時候在子類的物件中會多出一個叫虛類指標的大小,有的資料說這個指標指向的記憶體裡面包含了該子類的偏移量和到基類的距離。但是我跟蹤過這段記憶體,發現裡面的資料沒有規律,也找不到更多的支撐材料,權且先知道子類的物件裡面會有這麼一個東西吧。 先總結虛擬繼承中比較特殊的地方,

繼承的概念及其作用,虛繼承一般繼承區別

虛繼承是多重繼承特有的概念,這裡需要明確的是,虛繼承與虛擬函式繼承是完全不同的概念。 虛繼承是為解決多重繼承而出現的,可以節省記憶體空間 舉例: 類c4繼承自類c2和類c3,類c2繼承自類c1,類c3頁繼承自類c1。這樣類c1就出現2次,我們可以通過虛繼承節省記憶體空間,

java中的繼承呼叫繼承的方法

package test; class People{int age,leg = 2,hand = 2;protected void showPeopleMess() {System.out.printf("%d歲,%d只腳,%d隻手\t",age,leg,hand);}} class Student ext

spring入門——applicationContextBeanFactory的區別

缺點 alt .get 執行 tex app blog actor cati     我們知道從applicationContext容器對象中如何獲取Bean了,其實spring框架還有另外一種獲取bean的方法:BeanFactory代碼如下:   BeanFactor

每天學一點Scala之ScalaJava區別

scala java 函數式編程 A、Scala是編譯型語言,可以隨意調用Java代碼;B、 Scala函數式編程語言,在scala世界裏,函數才是一等公民;函數可以作為參數進行傳遞,可以賦值給變量,可以作為返回值進行返回scala中,具有嵌套函數、匿名函數、高階函數、偏函數scala支持閉包本

GroovyJava區別(一)

與Java的區別 對於Java開發者,Groovy儘可能變得自然。Groovy在被設計時盡力遵守最小驚喜原則,特別是對於來自Java背景的學習Groovy的開發者。 1 預設引入 以下包與類預設引入,即,不需要使用顯式import語句來使用它們: java.io

PL/SQL學習之--條件判斷IF elseJava區別

作為資料庫程式語言,PL/SQL與Java程式程式語言有很多的共同點,但這也使得以前做Java開發的往往會對這個問題忽略。 跟Java一樣plsql也是有條件分支判斷,ifelse,而且裡面的程式邏輯不是用中括號作分界的,而是伴隨每個條件邏輯,寫上end標誌。例如: IF (a = 0) T

python繼承繼承

1、類與物件裡的父類與子類(繼承): 類的繼承主要是指自子類對於之前父類的方法的繼承,如果子類裡面寫了父類裡的方法,則它會將父類裡的方法覆蓋掉,從而不能再呼叫到父類的方法。 2、為了解決父類與子類裡的同方法覆蓋問題,可以有以下兩種方法: (1)呼叫未繫結的父類方法: 在同方法下面新增: 父類名稱._

C#JAVA區別

C#(C-Sharp)是Microsoft的新程式語言,被譽為“C/C++家族中第一種面向元件的語言”。然而,不管它自己宣稱的是什麼,許多人認為C#更像是Java的一種克隆,或者是Microsoft用來替代Java的產品。事實是否是這樣的呢?

solidity智慧合約[36]-連續繼承多重繼承

連續繼承 合約可以被連續的繼承,在下面的合約中,father繼承了grandfather、son繼承了father。那麼son也同樣繼承了grandfather中的狀態變數和方法。 12345678910111213 contract grandfather{ &nbs

spring data jpa jpa的區別

spring data jpa 與 jpa的區別 - sinat_39789638的部落格 - CSDN部落格 https://blog.csdn.net/sinat_39789638/article/details/78045990   spring data jpa是sprin

groovyjava語法區別

。。 call 類的使用 雙引號 compareto 錯誤 cas math 這也 groovy與java語法區別 Groovy試圖對Java開發人員盡可能地兼容。在設計Groovy時,遵循最不意外的原則,尤其是對於那些來自Java背景的開發人員。 這裏我們列出了Java和

C++JAVA區別

    通常,我們聊到Java,第一印象“面向物件”,“沒有指標,編寫效率高,執行效率較低”。更深入、專業一點就談論 “java記憶體自動回收(GC垃圾回收機制),多執行緒程式設計”。**  java的三大特性是封裝、繼承和多型。** 總結如下: 1、&

scalajava區別

1、scala與java都有7中數值型別:int、short、long、byte、float、double、boolean這7種,但是scala中這7種值型別是類,在java中屬於基本型別,java中,資料型別分成基本型別和引用型別,scala中不區分。 2、

spring的jdbctemplate namedjdbctemplate的區別

1、呼叫儲存過程不一樣 2、後者能夠用具名引數 sql="{ call \"sp_account_member_fetch\"(?)}"; -- jdbctemplate的呼叫方式 sql=" select * from \"sp