1、Java是一個純的面向對象的語言;C語言是面向程序的語言;C++、VB、C#都是面向對象的語言;
2、計算機程序設計的本質是把現實生活中我們遇到的問題,抽象後利用計算機語言轉化到機器能夠理解的層次,並最終利用機器來尋求問題的解。主要涉及的兩個問題是一是:如何把問題抽象化;第二是:如何把以抽象的問題映射到機器能夠理解的語言;
3、機器語言、彙編語言和結構化高級語言三者屬於非面向對象的語言,
而前兩者又屬於面向機器語言,要求對硬件瞭解很深;
4、面向對象的思想:面向對象的編程語言將客觀事物看做具有狀態和行爲的對象,通過抽象找出同一類對象的共同狀態(靜態特徵)和行爲(動態特徵),構成模型——類;簡單來說類就是一個集合;
知識引深:結構和類的區別:
相同點:兩者都是一個集合;
不同點:結構只是抽取了性別、姓名等屬性,用相應的變量放到一個集合裏,才能顯示一個學生的信息,而沒有把行爲放到裏面;而類不僅僅抽取類那些屬性,而且還抽取了行爲、狀態,放到一個集合裏,用相應的方法來表示類的行爲;
5、面向對象的重要思想:
消息傳遞包括有類與類之間有何關係以及他們之間是如何傳遞的類;
例子:現實生活中的一類對象--汽車
面向對象的語言實現了封裝,封裝帶來的好處:隱藏類的數據,控制用戶對類的修改和控制數據訪問權限;其優勢是對數據的安全起到了隱藏作用;
數據訪問有三種形式:
共有:類外的方法也可以訪問;
私有:只能本類方法訪問,類外的方法不可以訪問;
保護
6、Java面向對象的好處:
可重用性:就是將已有類作爲新類的子類
可靠性:純的面向對象的,所有的程序都要封裝的;
抽象和封裝:封裝後放到一個集合裏,保證數據安全,先抽象再封裝;
繼承性:其核心是建立一個新類;在已有類的基礎上(已有類要包含它的屬性、行爲…)建一個新類,可作爲已有的子類;是一個或一種的可以定義爲子類或父類,就像水果是一種屬於父類,而蘋果是一個屬於水果,蘋果是子類,但它繼承父類的行爲、屬性等但又有自己獨特的性質,即子類繼承父類所有的行爲方法,它包含了父類的所有;
多態性:在面向對象的程序設計中,同一個消息被不同的對象接收可以導致不同的行爲;解釋是:同一個消息比如說父類爲形狀類,而圓、矩形都可求面積、周長…,圓和矩形都要求面積,但是各個的方法不一樣,所求的行爲就不同;
7、Java與C的區別:
a、Java裏無指針,內部有一些安全程序,Java不屬於類成員的函數;
b、無#include或#define預處理功能,用import語句來包含他的類和包;
c、無多重繼承;
d、Java禁用goto,沒有structure、union及typedef
e、無全局變量,可在類中定義公用,靜態實現多種功能;
8、Java語言的特點:
面向對象
安全性
操作平臺無關性:一次編寫,到處運行,不同的操作系統都能用;
多線程:對內存自行管理,自動垃圾回收;
內存管理
9、組成Java程序的最小單位是類;Java的好處在於它的大多數功能,有大量已經編譯好的、經過測試的類,可以直接使用,從而大大提高了程序的開發效率,這些類的集合叫做Java類庫,Java類庫也稱爲Java API(Application Programming Interface);
10、Java的開發環境有:Application應用程序、Applet小應用程序;
.java文件通過編譯器生成.class類文件,然後通過解釋器生成二進制文件即機器語言,從而被不同的機器所識別。