§JAVA封裝,get與set method
封裝觀念在物件導向中語沒有什麼不同,只是Java的get與set使用方式上與ActionScript3規則不太相同,以下將Java與AS3,的get與set使用方式整理一下。
Java Encapsulation Example:
Java中可由abstract宣告,告知編譯器這是抽象類別。
這是一個Animal(動物)類別,他是一個抽象類別(形容並代表各種動物,並非具體的形容),所以宣
告為abstract,在JAVA中宣告為abstrace的類別是不可以透由new來實體化物件。
//Animal 類別
//命名空間,在Win系統上package代表一個資料架,這代表Animal這個類是放在animal資料夾理。
package animal;
abstract public class Animal
{
//宣告一個型別String,名稱為food的私有變數。
private String _food;
//建構子,Java的建構子是支援overlod的,之後談到method的overload再來介紹。
public Animal()
{
//建構式,java中若不編輯,會自動隱含宣告一個空args的建構式。
}
//Food 封裝
public void setFood(String food)
{
if(_food == food)
return;
_food = food;
}
public String getFood()
{
return _food;
}
}
2010年5月11日 星期二
2010年5月7日 星期五
JAVA PATH,環境變數設定
此篇是關於JDK安裝後PATH設定,關於JDK的安裝方法可參考Eclipse與JDK安裝篇。
Windows7
Step 1.電腦圖示上點擊滑鼠右鍵打開操作選單,點擊內容(R),以進入系統。
操作選單
Step 2.系統中於左側中找到進階系統設定點擊,以進入系統內容。
系統介面
Step3.於系統內容中,確定於進階環境中,點擊右下環境變數,打開環境變數面板
以便設定Java JDK Path。
Windows7
Step 1.電腦圖示上點擊滑鼠右鍵打開操作選單,點擊內容(R),以進入系統。
操作選單
Step 2.系統中於左側中找到進階系統設定點擊,以進入系統內容。
系統介面
Step3.於系統內容中,確定於進階環境中,點擊右下環境變數,打開環境變數面板
以便設定Java JDK Path。
2010年5月6日 星期四
精準度處理
//1000等同取小數三位精準
var fixedValue:int = 1000;
var v1:Number = 0.6;
var v2:Number = 3;
var v3:Number = v1 * v2;
//1.7999999999999998
trace(v3);
v1 = v1 * fixedValue;
v3 = v1 * v2 / fixedValue;
//1.8
trace(v3);
var fixedValue:int = 1000;
var v1:Number = 0.6;
var v2:Number = 3;
var v3:Number = v1 * v2;
//1.7999999999999998
trace(v3);
v1 = v1 * fixedValue;
v3 = v1 * v2 / fixedValue;
//1.8
trace(v3);
2010年5月5日 星期三
Lift Cycle , 元件生命週期與應用程式週期
§元件生命週期與應用程式週期
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
preinitialize="application1_preinitializeHandler(event)"
initialize="application1_initializeHandler(event)"
creationComplete="application1_creationCompleteHandler(event)"
applicationComplete="application1_applicationCompleteHandler(event)"
>
<s:layout>
<s:BasicLayout/>
</s:layout>
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
import mx.managers.SystemManager;
override protected function createChildren():void
{
//用來將子物件貼附置容器中
super.createChildren();
trace("//---------------------------------------------------");
trace("//createChildren");
trace("//---------------------------------------------------");
trace("");
}
2010年5月4日 星期二
FlashVars, HTML參數,給予SWF使用
AC_FL_RunContent( "src", "playerProductInstall",
"FlashVars", "MMredirectURL="+MMredirectURL+'&MMplayerType='+MMPlayerType+'&MMdoctitle='+MMdoctitle+"",
"width", "${width}",
"height", "${height}",
"align", "middle",
"id", "main",
"quality", "high",
"bgcolor", "${bgcolor}",
"name", "${application}",
"allowScriptAccess","sameDomain",
"type", "application/x-shockwave-flash",
"pluginspage", http://www.adobe.com/go/getflashplayer,
"flashVars" , "embedCode=test1234567"
);
"FlashVars", "MMredirectURL="+MMredirectURL+'&MMplayerType='+MMPlayerType+'&MMdoctitle='+MMdoctitle+"",
"width", "${width}",
"height", "${height}",
"align", "middle",
"id", "main",
"quality", "high",
"bgcolor", "${bgcolor}",
"name", "${application}",
"allowScriptAccess","sameDomain",
"type", "application/x-shockwave-flash",
"pluginspage", http://www.adobe.com/go/getflashplayer,
"flashVars" , "embedCode=test1234567"
);
Flex Button 的autoRepeat 須注意Event
最近剛好需要一個按住按鈕連發的功能,查了一下ActionScript 3.0 Language and Components Reference確定了Flex的Buttonu有一個autoRepeat屬性,只要設為ture就可以啟動button內部的Timer,結果奇怪怎麼在按鈕按下後只觸發了一次呢?????結果一查原來我習慣使用flash.events底下的MouseEvent而autoRepeat是使用FlexEvent發送所以就收不到連發事件囉!!請看以下範例
Example:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
applicationComplete="application1_applicationCompleteHandler(event)"
>
<s:layout>
<s:BasicLayout/>
</s:layout>
Example:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
applicationComplete="application1_applicationCompleteHandler(event)"
>
<s:layout>
<s:BasicLayout/>
</s:layout>
訂閱:
文章 (Atom)