2024-10-07

面向?qū)ο缶幊?Object-Oriented Programming,簡稱OOP)是計算機科學中常見的編程范式。與傳統(tǒng)的面向過程編程相比,面向?qū)ο缶幊虒嶓w抽象成對象,以此來描述和解決問題。在現(xiàn)代軟件開發(fā)中,OOP是一種非常重要的編程思想,可以極大地提高軟件的可讀性、可維護性和可擴展性。因此,在JAVA編程課程中,教授面向?qū)ο缶幊淌欠浅1匾摹?br>

JAVA 面向?qū)ο缶幊探虒W設計

JAVA面向?qū)ο缶幊痰慕虒W,應該在JAVA編程基礎課程的基礎上進行。通常推薦在學生掌握了JAVA基礎語法和語言特性的基礎上,開始教授面向?qū)ο缶幊獭T谡n程設置方面,可以按照以下的框架進行。

·面向?qū)ο缶幊探榻B

OOP 的初步理解類和對象

繼承、封裝、多態(tài).類的設計

成員變量、屬性和方法構造方法

所有的編程語言都會操縱內(nèi)存中的元素。有時程序員必須要有意識地直接或間接地操縱它們。在 C/C++ 中,對象的操縱是通過指針來完成的。Java 利用萬物皆對象的思想和單一一致的語法方式來簡化問題。雖萬物皆可為對象,但我們所操縱的標識符實際上只是對對象的“引用” 。舉例:我們可以用遙控器(引用)去操縱電視(對象)。只要擁有對象的“引用”,就可以操縱該“對象”。此外,沒有電視,遙控器也可以單獨存在。

下面來創(chuàng)建一個?String?引用,用于保存單詞或語句。代碼示例:


?對象清理

大多數(shù)程序語言都有作用域的概念。作用域決定了在該范圍內(nèi)定義的變量名的可見性和生存周期。在 C、 C++ 和 Java 中,作用域是由大括號?{}?的位置決定的。例如:


Java 的變量只有在其作用域內(nèi)才可用??s進使得 Java 代碼更易于閱讀。由于 Java 是一種自由格式的語言,額外的空格、制表符和回車并不會影響程序的執(zhí)行結果。在 Java 中,你不能執(zhí)行以下操作,即使這在 C 和 C++ 中是合法的:


在上例中, Java 編譯器會在提示變量 x 已經(jīng)被定義過了。因此,在 C/C++ 中將一個較大作用域的變量"隱藏"起來的做法,在 Java 中是不被允許的。 因為 Java 的設計者認為這樣做會導致程序混亂。

Java 對象與基本類型具有不同的生命周期。當我們使用?new?關鍵字來創(chuàng)建 Java 對象時,它的生命周期將會超出作用域。因此,下面這段代碼示例:


上例中,引用 s 在作用域終點就結束了。但是,引用 s 指向的字符串對象依然還在占用內(nèi)存。Java通過垃圾回機制釋放內(nèi)存摒棄了C++操作內(nèi)存可能出現(xiàn)的諸多問題。

?類的創(chuàng)建

大多數(shù)面向?qū)ο蟮恼Z言都使用?class?關鍵字類來描述一種新的對象。 通常在?class?關鍵字的后面的緊跟類的的名稱。如下代碼示例:

當我們創(chuàng)建好一個類之后,我們可以往類里存放兩種類型的元素:方法(method)和字段(field)。

字段:類的字段可以是基本類型,也可以是引用類型。如果類的字段是對某個對象的引用,那么必須要初始化該引用將其關聯(lián)到一個實際的對象上。

方法:在許多語言(如 C 和 C++)中,使用術語?函數(shù)?(function) 用來命名子程序。在 Java 中,我們使用術語?方法(method)來表示“做某事的方式”。

返回類型:方法的返回類型表明了當你調(diào)用它時會返回的結果類型。參數(shù)列表則顯示了可被傳遞到方法內(nèi)部的參數(shù)類型及名稱。方法名和參數(shù)列表統(tǒng)稱為方法簽名(signature of the method)。簽名作為方法的唯一標識。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 1. Introducing JavaScript objects 2. Client-side web AP...
    igor_d140閱讀 3,310評論 1 2
  • 1.面向?qū)ο缶幊逃心男┨攸c? 1.抽象: 抽象就是忽略一個主題中與當前目標無關的那些方面,以便更充分地注意與當前目...
    霸啵喯閱讀 331評論 0 1
  • ??歡迎前往本人的GitHub查看更多內(nèi)容。[點擊前往GitHub](https://github.com/iOSh...
    iOS超級洋閱讀 442評論 0 1
  • 1.import static是Java 5增加的功能,就是將Import類中的靜態(tài)方法,可以作為本類的靜態(tài)方法來...
    XLsn0w閱讀 1,427評論 0 2
  • Spring面試題: 1、簡單介紹一下Spring? Spring 是個java企業(yè)級應用的開源開發(fā)框架。Spri...
    伊尹之閱讀 483評論 0 1

友情鏈接更多精彩內(nèi)容