java面向物件程式設計以及陣列理解
阿新 • • 發佈:2018-12-09
一、語言的進化史
在計算機語言發展的早期,由於cpu和記憶體的限制,導致說發展很慢。後來由於硬體裝置的革命(即cpu價格的下跌和記憶體數量和容量的上升,記憶體的價格的下跌)和資金的推動(資本家為了提高勞動生產率和剩餘價值),計算機語言開始了高速的進化,從一開始的基本型別到結構體的過渡型別,再向類模式的複雜型別的演化(即從c語言的面向過程到c++等面嚮物件語言的演化)
二、類和物件
首先我們要知道什麼是物件?答案就是萬事萬物皆物件,世界是由物件構成的,物件是真實存在的,物件有其特徵和行為,物件的組合可以成為一個新的物件。
然後要理解什麼是類?類是虛擬的概念,具備了物件的一切特徵和行為,但卻並不存在,相當於一個模具,物件是從類這個模具中印出來的具體例項
所以類與物件的關係就是 :類是對物件的抽象,而物件是類的具體例項
建立類是複雜的抽象的,建立物件是簡單的,new一個就行了
三、如何建立類和物件
類中包含兩個部分,屬性和方法(靜態特徵和動態特徵),屬性是主人,方法為屬性服務。在為類新增方法和屬性的時候,你會發現,有時候好一些屬性和方法在你要編寫的程式中是多餘,這個時候你可以選擇捨棄,沒必要全部新增進去,既浪費空間也浪費時間。至於具體怎麼建立類,再次不做說明(太簡單了),
建立物件的話,類似於 (類名 物件變數 = new 類名()) 至於物件的初始化可以選擇重寫構造方法或者set和get方法進行物件的初始化
四、Random類
Random是隨機數生成類,可以用來生成隨機數,使用方法:
Random r = new Random(); for(int i = 0 ;i< 5;i++) { System.out.println(Math.abs(r.nextInt()%10));//生成0-9的隨機數,abs()是絕對值函式 System.out.println(r.nextInt(10));//生成0-9的隨機數 System.out.println(1+r.nextInt(10));//生成1-10的隨機數 System.out.println(r.nextFloat());//生成0.0-1的隨機浮點數,不包含1 System.out.println(r.nextDouble());//生成0.0-1的隨機雙精度浮點數,不包含1 System.out.println(r.nextBoolean());//生成隨機布林值 }
五、陣列理解、建立以及初始化
1.陣列的建立與初始化:
public class ArrayTest {
/**
* @param args
*/
public static void main(String[] args) {
//建立空間為3的陣列
//int a[3];//方法一
int[] a = new int[3];//方法二
a[0]=100;
//一維陣列的初始化
int[] b = new int[]{1,2,3};//方法一
int[] c = {1,2,3};//方法二
//int d[] ={1,2};//方法三,不推薦
//二維陣列建立及初始化
int[][] m = new int[3][3];
int[][] n={
{1,2,3},
{4,5,6},
{7,8,9}
};
System.out.println(n[1][1]);
}
}
2.陣列的記憶體引用變數指向理解圖
3.陣列的理解