面向對象編程,我的思想(2)
發表時間:2024-05-21 來源:明輝站整理相關軟件相關文章人氣:
[摘要]1.2 內置數據類型與函數: 計算機程序在存儲數據時必須跟蹤3個基本屬性為:1. 信息存儲在何處;2. 存儲的值是多少;3. 存儲的信息是什么類型的;讓我們來看看編程語言的內置數據類型都有哪些!(呵呵,這個不大好說,因為每門語言都有自己獨特的數據類型,但這畢竟是少數,比如在JAVA中有byt...
1.2 內置數據類型與函數: 計算機程序在存儲數據時必須跟蹤3個基本屬性為:1. 信息存儲在何處;2. 存儲的值是多少;3. 存儲的信息是什么類型的;讓我們來看看編程語言的內置數據類型都有哪些!(呵呵,這個不大好說,因為每門語言都有自己獨特的數據類型,但這畢竟是少數,比如在JAVA中有byte類型的數據,而在C++中就沒有,希望你能舉一反三!)比如整數”int ”,浮點類型的數據”float”!字符串”String”,以及數組還有結構體等等。然而在寫程序的時候,根據需要我們會創建一個類型的變量或常量,例如:由于我們需要創建一個整形的變量i為5,我們就可以這樣做,int i = 5;而根據需要我很有可能改變i的值,也就是從新給它賦值,比如讓它等與6,就可以在所需的地方改成i = 6;由此我們知道,在“值”上可以發生變化的量就叫變量。不會發生變化的量就叫做常量了,在C++中用count關鍵字來聲明,而在JAVA中則使用final關鍵字來聲明。由于不同語言的聲明格式不一樣,這里就不做一一介紹了,詳細的內容清查閱相關書籍!在這里我們主要討論一下函數,我們可以把函數想象成一個“實現某種特定功能的黑匣子”-------這個功能是由你來設定的,舉個例子來說:現在我問你“2+3等于多少”?我相信你能很快的回答我等于5。讓我們來分析分析這句話包含什么信息!首先我要把你的大腦想象成是一個黑匣子,我并不知道也沒有必要知道你的大腦是如何工作的(也就是怎么運算的),我關心的只是我傳給你的是什么信息?你對信息做了哪些處理? 以及你返回給我的是什么信息?需要提醒你一下的是每個方法都會返回一個信息給調用者的,除了構造函數外(稍候我會作詳細的介紹)。我現在需要把自己當作是一名程序員,而你呢?當然就是計算機了!計算即可沒有人那么聰明,它只會按事先約好的特定的格式運行,我想讓它具有如上所述的功能,我就要先定義這個黑匣子!首先我要告訴這個黑匣子會有兩個整數值給你(這就是所謂的參數,是程序員需要給黑匣子的信息),然后就要定義這個黑匣子內部實現這兩個整數相加的運算(這就是黑匣子對數據所做的加工,根據需要,你可以做任何的加工。)。最后再標注它返回給我一個同樣是整型的數值(這是黑匣子返回給程序員的信息)。一個函數就這樣定義完了,讓我們來看看書寫格式:int addnum(int x,int y){ return x+y;}具體的含義是這樣的:int /*返回值類型*/ addnum /*方法(黑匣子)名稱*/ (int x,int y/*傳入的參數*/){ return x+y; /*內部是想方法(實現相加運算,)并用return返回給調用者結果*/}首先請注意上明的“return”語句!return 關鍵字的含義是向調用者返回緊跟在它后面的信息!就像上面一樣,因為我問你,你才會回答我,如果我不問你,你就不用回答我的!在計算機中也一樣,定義好這個函數在哪里調用呢?我只能告訴你,哪里需要就在哪里調用!當然,你可以根據需要去更改參數、返回值以及內部實現,具體到如何定義如何調用你只好去參考相關的資料了!在這里我只是給你一個思想! 有時你會遇到這樣的問題,我讓你記住,我的年齡是20歲!從字面上理解,你并沒有給我返回信息!然而事實上,你確實給我返回了信息,信息的內容是“無信息,也就是無返回值類型void”。具體的程序如下: int myAge = 0; int a=20;void remAge(int a){ myAge=a;}具體的函數說明如下:int myAge =0; //定義并初始化我的年齡為0;int a=20; /*定義變量a等于20*/void /*返回值類型為無返回值類型*/ remAge /*函數名稱*/(int a /*傳入的參數*/){ myAge=a; //內部實現方法,注意,沒有return返回!!!}關于函數的話題還有很多很多,這里就不一一介紹了,我的目的是讓你知道函數是怎么一會事兒!為下面的討論作鋪墊!1.3 指針以及引用:指針及引用是在C++中有的,JAVA中沒有。JAVA中取消了對內存的操作,隨之而來的事也取消了操作符重載的操作。不過在稍候我還是會介紹一些操作符重載的功能等。引用主要還是用在函數參數的傳遞上。所以我在這里就不做過多的介紹了。他們很實用,有興趣的同學可以參閱C++相關書籍。.4 運算符及控制語句:還是自己看看相關書籍吧,這里就不再熬述了