201871010104-陈园园 《面向对象程序设计 (java)》第一周学习总结
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?201871010104-陳園園 ? 《面向?qū)ο蟪绦蛟O(shè)計 ?(java)》第一周學(xué)習(xí)總結(jié)
| 項目 | 內(nèi)容 |
| 這個作業(yè)屬于哪個課程 | https://www.cnblogs.com/nwnu-daizh/ |
| 這個作業(yè)要求在哪里 | https://www.cnblogs.com/lily-2018/p/11441372.html |
| 作業(yè)學(xué)習(xí)目標(biāo) |
第一部分:課程學(xué)習(xí)平臺注冊賬號
| 平臺名稱 | 注冊賬號或者個人博客園地址 |
| 博客園:www.cnblogs.com | https://www.cnblogs.com/chanyeol1127/ |
| 程序設(shè)計評測:https://pintia.cn/ | cyybx |
| 中國大學(xué)MOOC:?https://www.icourse163.org/ | 17339824297 |
| 以下回答是或否 | ? |
| 是否加入課程班級博客群 | 是 |
| 是否加入課程QQ討論群 | 是 |
第二部分:理論知識學(xué)習(xí)部分
第一章 Java程序設(shè)計概述(由書本可知)
1、 java程序設(shè)計平臺
? ? “作為一種計算機語言,Java的廣告詞確實有點夸大其辭。”然而,Java的確是一種優(yōu)秀的程序設(shè)計語言。作為一名名副其實的程序設(shè)計人員,使用Java無疑是一個好的選擇。有人認(rèn)為:Java將有望成為一種優(yōu)秀的程序設(shè)計語言,但還需要一個相當(dāng)長的發(fā)展時期。一旦一種語言應(yīng)用于某一個領(lǐng)域,與現(xiàn)存代碼的相容性問題就擺在了人們的面前。”
? ? Java原先是有sun公司開發(fā)的,有許多非常優(yōu)秀的特性。Java并不只是一種語言,Java是一個完整的平臺,有一個龐大的庫,其中包含了許多重要的代碼和一個提供諸如安全性以及自動垃圾吸收等服務(wù)的執(zhí)行環(huán)境。
? ? 與許多其他優(yōu)秀的語言一樣,Java完全滿足了這些要求。Java具備所有的特性,它是一種功能齊全的出色語言,是一種高質(zhì)量的執(zhí)行環(huán)境,還提供了一個龐大的庫。正是因為它集多種優(yōu)勢于一身,所以對廣大的程序設(shè)計人員有著不可抗拒的吸引力。
2、 Java“白皮書”的關(guān)鍵術(shù)語
?1)簡單性
? ? ?Java語言是C++語法的一個純凈版本。這里沒有頭文件、指針運算(甚至指針語法)、結(jié)構(gòu)、聯(lián)合、操作符重載、虛基類等。然而設(shè)計者并沒有試圖清除C++中所有不適當(dāng)?shù)奶匦浴@?#xff0c;switch語句在Java中就沒有改變。如果你了解C++你就會發(fā)現(xiàn)可以輕而易舉地轉(zhuǎn)換到Java語法。以前,Java剛發(fā)布時,許多開發(fā)人員肯定覺得Java并不簡單。很多年以后Java的開發(fā)環(huán)境才迎頭而上。如今,Java發(fā)開環(huán)境已經(jīng)遠(yuǎn)遠(yuǎn)超過了大多數(shù)其他編程語言的開發(fā)環(huán)境。簡單的另一方面是小。能夠在小型機器上獨立運行的軟件。隨著時代的發(fā)展,現(xiàn)在已經(jīng)適用于嵌入式設(shè)備。
2)面向?qū)ο笮?/span>
? ??簡單來說,面向?qū)ο笤O(shè)計是一種程序設(shè)計技術(shù)。它的重點在于對象。舉一個例子:有一個木匠想做一把椅子,一個有面向?qū)ο筇攸c的木匠,他始終關(guān)注的是所制造的椅子,然后再關(guān)注所使用的工具;一個不具有面向?qū)ο筇攸c的木匠,他首先考慮的是所用的工具。在本質(zhì)上,Java的面向?qū)ο竽芰虲++是一樣的。主要不同點在于,C++可以多重繼承,在Java中取而代之的是更簡單的接口概念。總的來說,就是Java先考慮的是結(jié)果,再考慮怎么實現(xiàn)它。
3)分布式
? ? ?Java有一個豐富的例程庫,到這里是不是想問例程庫 是什么? 有什么用? 它是用于處理像HTTP和FTP之類的TCP/IP協(xié)議。Java應(yīng)用程序能通過URL打開和訪問網(wǎng)絡(luò)上的對象,它的編寫程度就相當(dāng)于我們訪問本地一樣。
4)健壯性
? ? ?Java的設(shè)計目標(biāo)之一就在于Java編寫的程序可以具有多方面的可靠性。Java編譯器能夠檢測許多在其他語言中僅在運行時才能檢測出來的問題。至于第二點,對于以前需要花費幾個小時才能檢查出指針bug而引起的內(nèi)存沖突的人來說,一定會愛上Java的這一特性。簡單來說,健壯性是指出錯了也能繼續(xù)運行的能力。
5)安全性
? ? ? ?Java適用于網(wǎng)絡(luò)/分布式環(huán)境。為了達到這個目標(biāo),在安全方面投入了很大精力。使用Java可以構(gòu)建防病毒、防篡改的系統(tǒng)。從一開始,Java就設(shè)計成能夠防范各種攻擊,其中包括:*?運行時堆棧溢出時。如蠕蟲和病毒常用的攻擊手段。*破壞自己的進程空間之外的內(nèi)存。*未經(jīng)授權(quán)讀寫文件。?不過黑客已經(jīng)擅長找出全體系結(jié)構(gòu)實現(xiàn)中的小漏洞,Java安全模型沒有原先預(yù)想的那么成功,不過我相信遲早有一天,它會出現(xiàn)奇跡的。
6)體系結(jié)構(gòu)中立
? ? ? ?編譯器生成一個體系結(jié)構(gòu)中立的目標(biāo)文件格式,這是一種編譯過的代碼,只要有Java運行時系統(tǒng),這些編譯后的代碼可以在許多處理器上運行。Java編譯器通過生成與特定的計算機體系結(jié)構(gòu)無關(guān)的字節(jié)碼指令來實現(xiàn)這一特性。精心設(shè)計的字節(jié)碼不僅可以很容易地在任何機器上解釋執(zhí)行,而且還可以迅速地翻譯成本地機器的代碼。字節(jié)碼可以實現(xiàn)了結(jié)構(gòu)中立。
7)可移植性
? ? ? 因為Java有一個JVM(Java Virtual Machine)Java虛擬機,源程序*.java被編譯成字節(jié)碼文件,字節(jié)碼是與平臺無關(guān)的,是面向jvm編寫的,而Jvm又有自己的一套指令系統(tǒng),在不同的平臺上jvm的指令也是不一樣的,也就是說不同操作平臺有自己的Jvm但是Jvm向上的字節(jié)碼接口是與平臺無關(guān)的,Jvm接口向下是與硬件有關(guān)的,jvm是個中間件,這樣只要有字節(jié)碼和Jvm,不管在任何平臺都可以運行Java程序。全靠的是Jvm虛擬機,可以跨平臺,這就是可移植性。
8)解釋性
? ? ? ?Java解釋器可以在任何移植解釋器的機器上執(zhí)行Java字節(jié)碼。由于鏈接是一個輕量級的過程,所以,開發(fā)過程也變得更加敏捷,更加具有探索性。它其實就是把做好的源程序翻譯一句,然后執(zhí)行一句,直至結(jié)束。特點:執(zhí)行速度慢、效率低;依靠解釋器、跨平臺性好。javascript語言也是解釋型的。
9)高能性
? ? ? 盡管現(xiàn)在我們對解釋后的字節(jié)碼的性能已經(jīng)比較滿意了,但在有些場合還需要更高的性能,這時候我們該怎么辦呢?字節(jié)碼可以在運行時刻 動態(tài)地 翻譯成對應(yīng)這個應(yīng)用的特定CPU的機器碼。
10)多線程
? ? ? 多線程可以帶來更好的交互響應(yīng)和實時行為。如今,我們非常關(guān)注并發(fā)性,現(xiàn)在我們不再追求更快的處理器,而是獲得更多的處理器,而且要讓它們一直保持工作。并發(fā)程序設(shè)計絕非易事,不過Java在這方面表現(xiàn)很出色,可以很好地管理這個工作;web編程因為時間不是很長,處理器則要花很長時間來等待服務(wù)器響應(yīng),需要并發(fā)程序設(shè)計來確保用戶界面不會被凍住。
11)動態(tài)性
? ? ? ?從各種角度看,Java與C或C++相比更加具有動態(tài)性。因為它能夠適應(yīng)不斷發(fā)展的環(huán)境。庫中可以自由地添加新方法和實例變量,而客戶端卻沒有任何影響。在Java中找出運行時類型信息十分簡單。
? ? ? ?當(dāng)需要將某些代碼添加到正在運行的程序中時,動態(tài)性將是一個非常重要的特性。比如說:從網(wǎng)上下載代碼,然后在瀏覽器上運行。如果使用C或C++,這確實難度很大,不過Java可以很容易實現(xiàn)程序的推演。(C#與Java有很多相同之處,不過使用的虛擬機卻是完全不同的)
3、Java發(fā)展簡史
第二章 Java程序設(shè)計環(huán)境
? ? ? ?jdk的下載與設(shè)置將在第三部分中說明。其次,學(xué)習(xí)了安裝源庫文件和文檔:
庫源文件在JDK中以一個壓縮文件src.zip的形式發(fā)布,必須將其解壓縮后才能夠訪問源代碼。
? ? ? 使用命令行工具:javac程序是一個Java編譯器,它將文件welcome.java編譯成welcom.class。Java程序啟動Java虛擬機。虛擬機執(zhí)行編譯器發(fā)在class文件中的字節(jié)碼。 ?
編譯器需要一個文件名(Welcome.java),而在運行程序時,只需要指定類名(Welcome),不要帶擴展名.java或.class。
? ? 使用集成開發(fā)環(huán)境:下載安裝eclipse解壓縮到你選擇的位置,執(zhí)行這個zip文件中的eclipse程序(詳細(xì)安裝過程將在第三部分在中說明)。
第三部分:實驗部分
1. 實驗名稱:實驗一 Java程序設(shè)計環(huán)境
2.? 實驗?zāi)康?#xff1a;
(1)掌握J(rèn)DK的安裝與配置;
(2)掌握使用JDK開發(fā)Java程序的基本命令及步驟;
(3)熟練運用Elipse集成開發(fā)環(huán)境開發(fā)java程序的基本步驟
(4)掌握J(rèn)ava程序的基本語法。
3. 實驗步驟與內(nèi)容:
實驗1 JDK的安裝與配置
1)首先根據(jù)班級群里老師發(fā)的?jdk-10.0.2_windows-x6...bin.exe下載文件,然后根據(jù)助教的知道進行安裝。
2)安裝完成后,出現(xiàn)如下位置的文件。
?
?3)進行環(huán)境配置,修改環(huán)境變量。使用鼠標(biāo)右擊“我的電腦-屬性-高級設(shè)置-環(huán)境變量-系統(tǒng)變量-編輯-新建-變量名”。
4)根據(jù)如下步驟找到路徑,添加變量名后配置好環(huán)境變量。
?
?
5)然后按win+R組合鍵,會出現(xiàn)以下界面,去驗證是否配置好,是否可以運行。
?
?
?
?
實驗2下載教材示例程序包
1)在班級課程群里找到老師下發(fā)的文件corejava.zip進行下載。
2)然后進行解壓,解壓完成后才能使用。
?
?實驗3 命令行編譯運行Welcome.java程序
1)將文件直接解壓至D盤,并找到如下代碼。
?
?2)按鍵盤上的window鍵+R鍵,輸入cmd,回車結(jié)束,進入dos。輸入D:,轉(zhuǎn)入D盤;輸入javac Welcome.java,編譯程序,得到運行結(jié)果。
?
?
?
?
?
實驗4 用JDK命令行開發(fā)HelloWorld!程序
1)代碼
public class Welcome {public static void main(String[] args){String greeting = "HelloWorld!";System.out.println(greeting);for (int i = 0; i < greeting.length(); i++)System.out.print("=");System.out.println();} }
?
?
?2)運行結(jié)果如下
?
?
?實驗5 下載安裝Eclipse集成開發(fā)軟件包
1)在班級群里面找到eclipse-inst-win64.exe,點擊下載第一個或者第二個。
?
?2)安裝過程中可能會出現(xiàn)問題,此時就自己去網(wǎng)上下載,可能是這個安裝包不適用的問題,下載完成后,按照步驟一步步進行安裝,安裝的時候盡量不要裝到C盤,直到出現(xiàn)welcome to eclipse 的頁面為止,說明安裝完成了。
實驗6 利用Eclipse開發(fā)程序輸出九九乘法表
1)安裝完成后,設(shè)置eclipse工作空間,建立Java文件夾。
?
?
?
?
?
?2)代碼如下
package welcome; public class welcome {public static void main(String[] args) {for(int i=1;i<=9;i++){for(int j=1;j<=i;j++){System.out.print(j+"*"+i+"="+i*j+'\t');}System.out.println();}}}
3)運行結(jié)果如下
?
?
?
4.實驗總結(jié):
? ?本節(jié)課是第一節(jié)java實驗課,也是首次接觸java,之前只是聽說java是一種語言,但通過第一周的學(xué)習(xí),慢慢了解到了java也是一個非常優(yōu)秀的平臺。本節(jié)課學(xué)習(xí)了java的發(fā)展簡史,此外,學(xué)習(xí)的重點是JDK的安裝與使用,以及環(huán)境配置,還有eclipsede的安裝于使用,
?在eclipse的配置過程中,出現(xiàn)了一些安裝不良的問題,但是在助教的幫助下頁順利得到了解決。其次就是在不同的開發(fā)環(huán)境下程序的運行步驟也是非常重要的環(huán)節(jié)。總之,在助教的幫助下,此次學(xué)習(xí)過程是愉快的,同時,也為我學(xué)習(xí)java打下了良好的基礎(chǔ)。
?
? ? ? ?
?
?
? ??
轉(zhuǎn)載于:https://www.cnblogs.com/chanyeol1127/p/11444445.html
總結(jié)
以上是生活随笔為你收集整理的201871010104-陈园园 《面向对象程序设计 (java)》第一周学习总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python爬取豆瓣短评
- 下一篇: 豆瓣2018年度电影榜单