更新時(shí)間:2021-08-25 10:26:12 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1711次
面向?qū)ο蟮臄?shù)據(jù)庫(kù)是一種數(shù)據(jù)庫(kù)管理系統(tǒng)。不同的數(shù)據(jù)庫(kù)管理系統(tǒng)提供額外的功能。面向?qū)ο蟮臄?shù)據(jù)庫(kù)將數(shù)據(jù)庫(kù)功能添加到對(duì)象編程語(yǔ)言中,從而創(chuàng)建更易于管理的代碼庫(kù)。
對(duì)象數(shù)據(jù)庫(kù)由一個(gè)管理ö bject- ö riented d ATA b ASE米anagement小號(hào)ystem(OODBMS)。該數(shù)據(jù)庫(kù)將面向?qū)ο蟮木幊谈拍钆c關(guān)系數(shù)據(jù)庫(kù)原理相結(jié)合。
對(duì)象是基本構(gòu)建塊和類的實(shí)例,其中類型是內(nèi)置的或用戶定義的。
類為對(duì)象提供模式或藍(lán)圖,定義行為。
方法決定類的行為。
指針有助于訪問(wèn)對(duì)象數(shù)據(jù)庫(kù)的元素并建立對(duì)象之間的關(guān)系。
OODBMS 中對(duì)象的主要特征是用戶構(gòu)造類型的可能性。在項(xiàng)目或應(yīng)用程序中創(chuàng)建的對(duì)象按原樣保存到數(shù)據(jù)庫(kù)中。
面向?qū)ο蟮臄?shù)據(jù)庫(kù)直接將數(shù)據(jù)作為完整的對(duì)象來(lái)處理。所有信息都來(lái)自一個(gè)即時(shí)可用的對(duì)象包,而不是多個(gè)表。
相比之下,關(guān)系數(shù)據(jù)庫(kù)的基本構(gòu)建塊,例如PostgreSQL 或 MySQL,是具有基于表數(shù)據(jù)之間邏輯連接的操作的表。
這些特性使對(duì)象數(shù)據(jù)庫(kù)適用于需要面向?qū)ο蟮木幊谭椒ǖ木哂袕?fù)雜數(shù)據(jù)的項(xiàng)目。面向?qū)ο蟮墓芾硐到y(tǒng)提供受支持的功能,以迎合以復(fù)雜對(duì)象為中心的面向?qū)ο缶幊獭_@種方法將數(shù)據(jù)的屬性和行為統(tǒng)一為一個(gè)實(shí)體。
面向?qū)ο蟮臄?shù)據(jù)庫(kù)與面向?qū)ο蟮木幊谈拍蠲芮邢嚓P(guān)。面向?qū)ο缶幊痰乃膫€(gè)主要思想是:
多態(tài)性
遺產(chǎn)
封裝
抽象
這四個(gè)屬性描述了面向?qū)ο蠊芾硐到y(tǒng)的關(guān)鍵特征。
多態(tài)性
多態(tài)性是一個(gè)對(duì)象采取多種形式的能力。這種能力允許相同的程序代碼處理不同的數(shù)據(jù)類型。汽車(chē)和自行車(chē)都可以打破,但機(jī)制不同。在這個(gè)例子中,動(dòng)作中斷是一個(gè)多態(tài)。定義的動(dòng)作是多態(tài)的——結(jié)果會(huì)根據(jù)車(chē)輛的表現(xiàn)而變化。
遺產(chǎn)
繼承在相關(guān)類之間創(chuàng)建層次關(guān)系,同時(shí)使部分代碼可重用。定義新類型繼承所有現(xiàn)有的類字段和方法,并進(jìn)一步擴(kuò)展它們。現(xiàn)有類是父類,而子類擴(kuò)展了父類。
例如,名為Vehicle的父類將有子類Car和Bike。兩個(gè)子類都從父類繼承信息,并根據(jù)車(chē)輛類型使用新信息擴(kuò)展父類。
封裝
封裝是將數(shù)據(jù)和機(jī)制分組到單個(gè)對(duì)象中以提供訪問(wèn)保護(hù)的能力。通過(guò)這個(gè)過(guò)程,對(duì)象如何工作的信息和細(xì)節(jié)被隱藏,從而導(dǎo)致數(shù)據(jù)和功能安全。類通過(guò)方法相互交互,而無(wú)需知道特定方法的工作原理。
抽象
抽象是僅表示所需功能的基本數(shù)據(jù)特征的過(guò)程。該過(guò)程會(huì)選擇重要信息,同時(shí)隱藏不必要的信息。抽象有助于降低建模數(shù)據(jù)的復(fù)雜性并允許重用。
例如,計(jì)算機(jī)可以通過(guò)多種方式連接到網(wǎng)絡(luò)。網(wǎng)絡(luò)瀏覽器需要互聯(lián)網(wǎng)連接。但是,連接類型無(wú)關(guān)緊要。與互聯(lián)網(wǎng)建立的連接代表一個(gè)抽象,而各種類型的連接代表抽象的不同實(shí)現(xiàn)。
每種數(shù)據(jù)庫(kù)建模技術(shù)都有優(yōu)點(diǎn)和缺點(diǎn)。在選擇使用面向?qū)ο蟮臄?shù)據(jù)庫(kù)之前,除了應(yīng)用程序意圖之外,您還必須了解可用的語(yǔ)言。
優(yōu)勢(shì)
主要優(yōu)點(diǎn)是:
與MySQL 數(shù)據(jù)類型相比,復(fù)雜的數(shù)據(jù)和更廣泛的數(shù)據(jù)類型。
易于快速保存和檢索數(shù)據(jù)。
與面向?qū)ο蟮木幊陶Z(yǔ)言無(wú)縫集成。
更容易模擬先進(jìn)的現(xiàn)實(shí)世界問(wèn)題。
可擴(kuò)展自定義數(shù)據(jù)類型。
缺點(diǎn)
一些缺點(diǎn)包括:
不像關(guān)系數(shù)據(jù)庫(kù)那樣被廣泛采用。
沒(méi)有通用的數(shù)據(jù)模型。缺乏理論基礎(chǔ)和標(biāo)準(zhǔn)。
不支持意見(jiàn)。
高復(fù)雜度會(huì)導(dǎo)致性能問(wèn)題。
不存在足夠的安全機(jī)制和對(duì)對(duì)象的訪問(wèn)權(quán)限。
以上就是動(dòng)力節(jié)點(diǎn)小編介紹的"面向?qū)ο髷?shù)據(jù)庫(kù)的介紹",希望對(duì)大家有幫助,想了解更多可查看Java教程。動(dòng)力節(jié)點(diǎn)在線學(xué)習(xí)教程,針對(duì)沒(méi)有任何Java基礎(chǔ)的讀者學(xué)習(xí),讓你從入門(mén)到精通,主要介紹了一些Java基礎(chǔ)的核心知識(shí),讓同學(xué)們更好更方便的學(xué)習(xí)和了解Java編程,感興趣的同學(xué)可以關(guān)注一下。
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743