我們還是勇敢面對吧:用戶端對於Java程式員來說,一直都不是個友好的地方 。Java在用戶端的技術,包括applet、Swing和JavaFX到目前為止只取得了有限的 成績。JavaScript除了它的名字外,幾乎沒有什麼地方像Java語言。而Adobe Flash呢,它看起來的確像JavaScript,真的嗎?也許在幾年前說Flash就像 JavaScript一樣是可以理解的,但隨著 ActionScript 3的出現,一切都改變了。 而且我相信你會喜歡它的很多東西。
首先,ActionScript這門針對Adobe Flex和Flash的程式設計語言,現在是強型別 的了。它也是一流的物件導向語言,包括有類和介面。它還擁有你在Java中找不 到的東西——特別地,它包含屬性的get和set方法,以及一個叫做ECMAScript for XML(E4X)的語言擴充,可以將任何XML文檔轉換成對象,這樣你就可以通過 “.”操作符直接引用它們,就跟普通對象一樣。
這篇文章會引領你瀏覽ActionScript的基礎內容,以及展示它與你所熟悉的 Java環境的不同。到最後,你就會放棄你對ActionScript 的任何偏見,並開始有 興趣把玩它。關於Flex、Flash和ActionScript的最偉大的事情之一就是它們完全 是免費的。只要下載了Adobe Flex Builder 3就可以開始了。Flex Builder是一 個複雜的整合式開發環境(IDE),而且不是免費的,但它用於構建Flash應用的 Flex軟體開發套件(SDK)是完全免費的。
對閱讀本文章的語言發燒友的一句忠告是:我並不是個語言教師,因此我可能 忽略掉一些語言的細節。我也不會在這篇文章中示範ActionScript 3的所有內容 。如果你的確需要這方面的內容,有很多非常棒的ActionScript 3的書籍。我能 給予你的就是你對這門語言的初次的感覺。讓我們開始吧。
類和介面
就和Java一樣,在ActionScript 3中一切皆是對象。雖然有一些基本類型,比 如integer,但除了這些,一切皆是對象。類似地,就像Java一樣,ActionScript 也有命名空間和包,比如com.jherrington.animals,其表示了company/jack herrington/animal下的類。你可以把類放到預設的命名空間,但更好的方法是由 你自己來控制自己的命名空間。
要定義一個類,你要使用class關鍵字,這也跟Java一樣。請看樣本:
package com.jherrington.animals
{
public class Animal
{
public function Animal()
{
}
}
}
在這個例子中,我定義了一個Animal類,以及什麼也沒乾的建構函式。我還可 以很容易地添加一些成員變數並完善這個建構函式,請看樣本:
package com.jherrington.animals
{
public class Animal
{
public var name:String = "";
private var age:int = 0;
private function Animal( _name:String, _age:int = 30 )
{
name = _name;
age = _age;
}
}
}