2013年4月7日

JAVA 2013/0407


Class and Object


1. An object must belong to a class.


2. The objects belong to a class they must have the same properties and operations.

3. Each object has its own properties and operations.

因物件的需求而開發類別  需要有類別才有物件

型別不是名字      一個名字指對應一個物件   所以人為型別 你的姓名為名字,人為名字其餘的皆不為人

運算的能立即為功能   相同類別所建立的物件,其屬性(只有名稱,質不相同)功能必相同

例如4個輪胎屬性名稱相同,其質(胎紋經過使用後不同),功能相同

每個物件擁有自己的屬性與功能改變自己的質(運算各自的資料(質variables))
field欄位

public class             shirt
         類別關鍵字    類別名稱

property=attribute 類別的屬性稱之為欄位=Field也就是變數=variables

method=operations=function資料的運算等等是寫在此處

optional非必要  雖然這裡指method comments,不過沒有field也合法
semicolons敘述
[modifiers]為修是辭,在java裡[ ]代表可省略
正體字為關鍵字(Keywords)且必小寫,斜體字為可改變的字
native引入其他語言函式
strictfp宣告精度更高的浮點數
identify識別字

不能當識別字的有下列
a. keywords
b. keepwords保留字,為關鍵字且無功能(不能使用)只在java
   1.const
   2.goto
c. Literals(字面值)直接打在程式馬上的值,需要記憶體空間,並存在Static Area,為常數不變的值,等到要執行時才會取出字面值放入相對應的變數ex:int a=8為字面值;8值先存在Static Area後來才存入a裡
System.out.println(25666666666);內的數字即為字面值(必為常數),整數的字面值預設為int,超過編譯會錯誤可以加L=>25666666666L
若 long a=25666666666;(x) => long a=25666666666L;(o)
   1.true
   2.false
   3.null

新增一個檔案,檔名為xxx.bat內容如下
set path=C:\Program Files\Java\jdk1.7.0_15\bin
%comspec% =>開啟dos視窗,且會依據xxx.bat在哪個目錄位址下,則依開始打開dos的目錄位置亦為此目錄位置


Shirt.java//類別檔
public class Shirt {
public int shirtID=0;
public String description="-description required-";
public char colorCode='U';
public double price=0.0;

public void displayInformation() {
System.out.println("Shirt ID: " + shirtID);
System.out.println("Shirt description: " + description);
System.out.println("Color Code: " + colorCode);
System.out.println("Shirt price: " + price);

}
}

> javac Shirt.java

ShirtTest.java//測試執行上面Shirt類別檔
class ShirtTest {
public static void main(String args[]) {
Shirt myShirt;
myShirt=new Shirt();

myShirt.displayInformation();
}
}
>javac ShirtTest.java
>java ShirtTest

command line用於在終端機模式執行java,故程式碼必須要有main,其餘的無論網頁上或手機上等皆不需要main,故其實最要的的程式碼是在class類別裡


ch5

pritimitive

在類別宣告變數,也在method宣告相同變數,實際不相同因變數具有區域性,有效範圍限制在區域大括號內

variables在java裡指欄位,也是是在類別裡的變數
而特別指名的local variables為區域變數

modifiers->public,......

型別指資料型態用來宣變數,物件等ex:int...

基本資料;java所能執行的最小單位
宣告基本資料型態->為小寫?
宣告非基本資料->為大寫?

int a=8; =>表要求作業系統配置4Bytes的記憶體空間


編譯與執行javatest腳本 for Dos

set path=C:\Program Files\Java\jdk1.7.0_15\bin
javac javatest.java
java javatest
%comspec%

A new SE7 feature allows you to express any of the integral types as a binary(0.1)

int a=??;
??為下列時代表不同的進制
10 =>10進制    =10
010=>8進制     =8
0x10=>16進制 =16
0b10=>2進制  =2   A new SE7 feature


another new SE7 feature.the ability to include underscores in a lengthy int number.
int a=1_4251;(合法)    =>執行結果為14251
底線作為區隔數字,好讀

浮點數的字面值預設為double資料型態
float a=1.0;(x)  float a=1.0F; (O) 將double型態轉成float

變數;造成執行結果的數,不完全表示為會變動的數

一般程式語言char為8bits JAVA為16bits

鍵盤8條線傳遞到電腦,每條線有0or1,所以共有2^8=256種組合
不過256種字元組合不夠用,現在大多為Unicode 16bits共2^16=65536種組合
且Unicode與ASCII前0~255完全相同,故兩可互相相容,而JAVA是採用Unicode16bits故可以印出多
種符號

cher a=整數;整數包含任何進制都可
正常單引號鋰面紙能有一個字元,特例char a='\u0010';表為十六進制的數字,且此必為四個數字,需加單引號

Escape character:Java跳多字元只有 '\'' '\n' '\"' '\t' '\\'  只要'\w'非可跳脫的字元編譯即錯誤

沒有留言:

張貼留言

文章有誤或有問題麻煩您留言告知! 謝謝您~~