-
1 # 可憐的菜圃和肚財
-
2 # IT小獅子
我不做開發好多年,我說下我現在對面向物件的理解吧,僅供參考。Java是程式語言,這個就不用說了,百度全是解答。
面向物件,我覺得就是“實體”,面向實體的屬性和行為,你有沒有發現,我們學習軟體工程的時候,書中提及到E—R圖,這圖就是說明實體間的聯絡,這大部門屬於客觀事實,而且資料庫的表設計也是由實體具體化後的產物。我覺得物件就是實體,而且隨著網際網路時代發展,物件的定義已經轉向人的,或使用者的…
不知對不對
-
3 # 瑞源生物
Java 是一項用於開發應用程式的技術,可以讓 Web 變得更有意思和更實用。 Java 與 javascript 並不相同,後者是一種用於建立 Web 頁的簡單技術,只能在瀏覽器中執行。
“Java是一種為多個平臺生成軟體的程式語言。由Sun Microsystems的前計算機科學家James A. Gosling在20世紀90年代中期開發的。編譯的程式碼可在大多數作業系統上執行。”
面向物件程式設計是當今主流的程式設計思想,已經取代了過程化程式開發技術,Java 是完全面向物件程式語言,所以必須熟悉面向物件才能夠編寫Java 程式。下面我就介紹什麼是java面向物件。
一、面向物件的概念面向物件是一種符合人類思維習慣的程式設計思想。現實生活中存在各種形態不同的事物,這些事物之間存在著各種各樣的聯絡。在程式中使用物件來對映現實中的事物使用物件的關係來描述事物之間的聯絡,這種思想就是面向物件。
提到面向物件,自然會想到面向過程,面向過程就是分析解決問題所需要的步驟,然後用函式把這些步驟一一實現,使用的時候一個一個依次呼叫就可以了。面向物件則是把解決的問題按照一定規則劃分為多個獨立的物件,然後透過呼叫物件的方法來解決問題。當然,一個應用程式會包含多個物件,透過多個物件的相互配合來實現應用程式的功能,這樣當應用程式功能發生變動時,只需要修改個別的物件就可以了,從而使程式碼更容易得到維護。
二、面向物件的特點面向物件的特點主要可以概括為封裝性、繼承性和多型性,接下來針對這三種特性進行簡單介紹。
1、封裝性
封裝是面向物件的核心思想,將物件的屬性和行為封裝起來,不需要讓外界知道具體實現細節,這就是封裝思想。例如,使用者使用電腦,只需要使用手指敲鍵盤就可以了無須知道電腦內部是如何工作的,即使使用者可能碰巧知道電腦的工作原理,但在使用時,並不完全依賴電腦工作原理這些細節。
2、繼承性
繼承性主要描述的是類與類之間的關係,透過繼承,可以在無須重新編寫原有類的情況下,對原有類的功能進行擴充套件。例如,有一個汽車的類,該類中描述了汽車的普通特性和功能,而轎車的類中不僅應該包含汽車的特性和功能,還應該增加轎車特有的功能,這時,可以讓轎車類繼承汽車類,在轎車類中單獨新增轎車特性的方法就可以了。繼承性不僅增強了程式碼複用性,提高了開發效率,而且為程式的修改補充提供了便利。
3、多型性
多型性指的是在程式中允許出現重名現象,它指在一個類中定義的屬性和方法被其他類繼承後,它們可以具有不同的資料型別或表現出不同的行為,這使得同一個屬性和方法在不同的類中具有不同的語義。例如,當聽到“Cut”這個單詞時,理髮師的行為是剪髮,演員的行為是停止表演不同的物件,所表現的行為是不一樣的。
想要真正理解Java面向物件的思想光靠上面的介紹是不過,需要透過大量的實踐去學習和理解,才能將面向物件真正領悟。想要系統學習java程式設計,就到黑馬程式設計師。
-
4 # 藍品彙1688
Java是一項用於開發應用程式的技術,是一種程式語言。 面向物件,可以從一切物件的角度去理解,封裝,繼承,多型是Java的三大特性。可以透過物件和方法名來呼叫其功能。使開發變得更快捷,更簡潔,效能更穩定。我們在開發過程中可以直接考慮更具體的流程。而不去關心細節的實現。
-
5 # TheOldR
說到語言,我們常常聽說的有英語、法語、俄語等等,這些語言是我們需要和不同的外華人溝通交流用到的。
Java其實也是一門語言,是計算機能夠聽懂的語言。當我們告訴計算機需要做什麼的時候,可以用Java語言告訴它。
當然計算機還能“聽懂”別的語言,比如C/C++,python,php……。
接下來說說怎麼理解“面向物件”。
提到面向物件,和它對應的一種思想叫“面向過程”。舉個例子,當我們要做一頓飯時,比較原始的方法是先淘米,用鍋蒸米飯;洗菜,切菜,炒菜。按照一定的先後順序,依次完成這些事情。當我們下次要做飯的時候,又來一遍。面向過程的思維,特點是清晰明瞭,易於理解。但是麻煩的點就是每次都得從頭開始,不能重複利用我們的工作成果。
同樣是做飯,我們可以用電飯煲,還可以用一些烹飪的機器,只需要放入食材,調料,就自動出菜。這個把做菜的過程中,一些同類的事物,進行了歸納分類總結,我覺得就是一種面向物件的思維。
面向物件大概就是這樣一種思維,當你在寫程式告訴計算機要做一件什麼事情的時候,充分的去分析思考,哪些事物是同一類的,哪些事情是會重複反覆做的,並對其事物的屬性、事情的分工步驟等內容進行分類和總結。
-
6 # 木凡空
Java 是面向物件的高階程式語言,類和物件是 Java 程式的構成核心。
它有三大基本特性:封裝是 Java 類的編寫規範、繼承是類與類之間聯絡的一種形式、而多型為系統元件或模組之間解耦提供瞭解決方案。
面向物件的程式核心是由物件組成的,每個物件包含著對使用者公開的特定功能和隱藏的實現部分。
它有以下特點:
(1)面向物件是一種常見的思想,比較符合人們的思考習慣;
(2)面向物件可以將複雜的業務邏輯簡單化,增強程式碼複用性;
(3)面向物件具有抽象、封裝、繼承、多型等特性。
-
7 # 甜甜卷ttj
JAVA語言,提供類介面和繼承等原於為了簡單起見,只支援類之間的單繼承,但其承擔支援介面之間的多繼承,並支援內與介面之間的實現的實現的實現機制,加瓦語言全面支援動態繫結,而C加加語言只對虛擬函式使用動態繫結,總之,JAVA,語言是一個純的面向物件程式設計語言。
百戰程式設計師裡高淇老師講的java300集就挺好的,明確細緻的講了java是什麼?該如何學習java. 你可以去官網看看,主要這麼好的課程還是免費的。
-
8 # 歷史帝君
Java是一門面向物件程式語言,不僅吸收了C++語言的各種優點,還摒棄了C++裡難以理解的多繼承、指標等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向物件程式語言的代表,極好地實現了面向物件理論,允許程式設計師以優雅的思維方式進行復雜的程式設計。
Java是一種簡單的,面象物件的,分散式的,解釋的,鍵壯的安全的,結構的中立的,可移植的,效能很優異的多執行緒的,動態的語言。
java相對c語言,是一種高階語言。
對 Java 語言來說,一切皆是物件。把現實世界中的物件抽象地體現在程式設計世界中,一個物件代表了某個具體的操作。一個個物件最終組成了完整的程式設計,這些物件可以是獨立存在的,也可以是從別的物件繼承過來的。物件之間透過相互作用傳遞資訊,實現程式開發。
面向物件具有封裝、繼承和多型 3 個核心特性:
比如人是一個物件(當然任何事物都可以當作一個物件),有他的喜怒哀樂、也有漂亮不漂亮,頭髮長短和顏色,但我們在開發過程中,會拋棄一些枝枝節節,抽象出我們需要的屬性,如人的身高、體重、性別、年齡、身份證號碼,我們把這些資訊封裝成一個物件,這個是物件的封裝特性。
如學生管理系統中,除了上面的屬性,學生資訊還有學號、專業、班級、入學時間等屬性;老師資訊還有職稱、專業、執教時間等資訊。
學生和老師當然是人,也會繼承人的屬性,如體重、身高、性別、年齡等資訊,這個就是物件的繼承特性。
那有學生不去教室上課,老師不去教室授課的道理,雖然都是在教室這個動作,但執行的流程是不同的,一個是聽課,另一個是講課,這個就是物件的多型特性了吧
-
9 # Lucifer351
面向物件的程式設計就是編出一個人來,這個人可以做很多種動作,跑,跳,走,舉手...他能做什麼取決於你如何組合這些動作,有些動作在一些功能中是不用的。而層次化的程式設計就是造出一個具體的工具,他只能幹這樣一件事,條件——結果。
零基礎學習Java的話,相對有些難的,自學需要時間很久~建議你跟著課程學習會更系統全面的,可以看看高淇老師的Java300集影片教程,很不錯!想報班學習的話,推薦北京是尚學堂哦!!!
回覆列表
Java是一門純面向物件的高階程式語言。這裡的高階語言可以理解為類似英語的有一定語法,格式的,高表達性的語言。當然高階語言也是相對於低階語言而言。在計算機科學中,低階語言分機器語言和組合語言。機器語言面向計算機(全是二進位制字串,人類難以閱讀),而組合語言則是高階語言和機器語言的折中。Java和其他程式語言一樣,可廣泛用於程式的編寫。
面向物件(Object Orientd)是指認識事物和處理問題的視角。自然界的客體都是物件。通常人類觀察問題的視角是在客體,客體的屬性反應客體在某一時刻的狀態,客體的行為反映客體能從事的操作。這些操作附在 客體之上並能用來設定、改變和獲取客體的狀態。任何問題域都有一系列的 客體,因此解決問題的基本方式是讓這些客體之間相互驅動、相互作用,最終使每個客體按照設計者的意願改變其屬性狀態。而面向過程則不是把客體作為一個整體,只是把依附於客體的行為抽出來,以功能為目標來進行設計,並且注重過程的描述而不是客體的表達。
面向物件所蘊含的哲學理念深厚,我敢說一個有經驗的程式設計師是不敢說完全理解面向物件的。