由于我们建立的是一个纯粹OOP的应用程序,因此所有的内容都在类文件中创建。在flash中,大部分应用程序都是包括可视的用户界面图形,因此,一个典型的OOP应用程序中,由类文件创建和管理UI组件。但在我们的例子里,只有两个类。现在,把我们的焦点只放在框架的构建上,所以既不用类创建视觉元素,也不用类完成特定的实际任务。为了强调框架的一般性和自然性,我们把两个类命名为A和B。我们来看怎样创建组件和管理基于现在的框架的结构用户界面。
一个OOP应用程序可能有许多个类,但只有一个用来开始应用程序,在我们的例子中,类A用来开始应用程序,类A有一个通常命名为main()的方法,按照习惯,这个方法包含应用程序的开始代码。在真实的应用程序中,类A将被含一个用来完成开始任务的main()方法的类代替。例如,在一个测验应用程序中,主要的类可能是Quiz,main( )方法用来初始化测验和显示第一个问题。在一个聊天应用程序中,首要的类可能是ChatClient,main()方法可能用来连接服务器。在上面的两个例子中,应用程序的接下去的部分是从main()方法执行之后开始的。例如,第1个问题答案的出现可能使第2个问题出现,或者服务器的成功连接使聊天界面出现。
基于对我们的应用程序的框架的考虑,我们认为类A的开始任务是创建类B的一个实例。
注:类方法main()的使用是严格按照java方法的,在flash中,main()的使用是可以选择的。在java中,由于语言的需要,main()方法是必须的,main()方法会被自动调用。但在flash中,你必须手工调用main()方法,时间轴的第1帧要跟在应用程序预载之后。
我们将把类保存在包com.somedomain中,在你的应用程序中,你应让包com.somedomain与你的站点的蜮名相匹配。例如,我的站点的蜮名是moock.org,我创建的所有类都在包moock.org之内。
创建包:
创建类A:
import com.somedomain.B; class A { private static var bInstance:B; public function A() { // 在这个例子中,类A的构造函数不使用 } public static function main():Void { trace("Starting application."); bInstance = new B( ); } }
3、保存到AppName/source/com/somedomain,文件名A.as
创建类B:
class com.somedomain.B { public function B() { trace("类B的一个实例被创建"); } }
在我们的框架中,请注意,我们把类保存在AppName/source目录中,这是合理的,但这不是一定要这样做,理论上讲,类能保存在任何地方,只要这个目录能被添加到全局或文档类路径,些目录中的类就能在时间轴上或其它类中使用。
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |