as2.0和java.c#一样.也运用oop模式.哪它一定就有继承.子类父类超类的分别.学过
java,c#的人很快就能理解.
这里说的类继承指一个class类能够继承另一个class类的全部方法和属性.在说as2.o的
类继承方法前.先说一下什么是.private(私有性成员)和public(公有性成员)
as2.0建立在class中的所有变量,方法,属性默认都是公有性的.我们当然也可以定义为私有
性的.比如一个变量.或方法.我并不想在fla文件中用到.而只是在class类中作为一个函数或
私有方法为这个class文件所用.就要用到private 定义为私有性
举例:
建立一个名为test_private.as的class类文件:
class test_private
{
private var tmp1:string; //声明tmp为私有变量
public var tmp2:string; //不加public默认都为公有变量
function test_private()
{
tmp1 = "私有变量"; //赋值
tmp2 = "公有变量";
}
}
var myclass:test_private = new test_private();
trace("tmp1=" + myclass.tmp1);
trace("tmp2=" + myclass.tmp2);
var myclass = new test_private();
trace("tmp1=" + myclass.tmp1);
trace("tmp2=" + myclass.tmp2);
//建立一个test1.as的类文件
class test1
{
private var hide_txt:string;
private var show_txt:string;
private function hide_sq()
{
_root.square._visible = false;
}
private function show_sq()
{
_root.square._visible=true;
}
}
class test2 extends test1
{
function test2()
{
hide_txt = "隐藏"; //继承了test1的变量,我们可以给他赋值
show_txt="显示";
}
}
on (release) {
var myclass= new test2();
myclass.hide_sq(); //继承了test1.as中的方法
txt.text = myclass.hide_txt;
//这是在test2.as中赋值的test1.as中的变量,说明继承之后变更为自己的特性
}
on (release) {
var myclass = new test2();
myclass.show_sq();
txt.text = myclass.show_txt;
}
var hide_txt:string;
var show_txt:string;
function hide_sq()
{
_root.square._visible = false;
}
function show_sq()
{
_root.square._visible=true;
}
class test4
{
#include "test3.as"
//这里引用test3.as文件.注意没(;)号结尾不然会出现一个语法错误
function test4()
{
hide_txt = "隐藏";
show_txt="显示";
}
}
on (release) {
var myclass:test4 = new test4();
myclass.show_sq()
txt.text = myclass.show_txt;
}
on (release) {
var myclass:test4= new test4();
myclass.hide_sq()
txt.text = myclass.hide_txt;
}
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器