0

我有两个课程,即adminglobal.ascompany.as

我需要adminglobal.ascompany.as. 此外,在访问时,我也需要使用构造函数中存在的变量company.as

基本上我需要的是adminglobal.as从 company.as 调用构造函数并使用构造函数中存在的变量company.as。怎么做?

4

3 回答 3

1

假设您AdminGlobal在一个名为的文件中有一个类,在一个文件中有adminglobal.as一个类。要在另一个类中访问一个类的构造函数,您只需将该类公开,然后导入该类,如果它们位于不同的包中。如果它们在同一个包中,那么您不需要隐式导入该类。Companycompany.as

为了在另一个类中使用一个类的变量和方法,您只需要确保这些变量和方法也被标记为公共。我建议您看一下Kirupa 的这篇关于 ActionScript3 中的类的教程

例如,如果您有adminglobal.as一个名为 的文件夹admins,则路线将是:your_project_folder/src/admins/adminglobal.as

和类的示例内容AdminGlobal

package admins
{
  public class AdminGlobal
  {
    //accesible variable
    public var name:String;

    //constructor
    public function AdminGlobal()
    {
      //do init stuff here
      name= "anon";
    }

  }

}

如果您在项目(默认包)的 src 文件夹中的文件 company.as 中有您的类 Company,则路线将是:your_project_folder/src/company.as

以及类的示例内容Company,访问类AdminGlobal

package
{
  //import public class from another package
  import admins.AdminGlobal;

  public class Company
  {

    //constructor
    public function Company()
    {
      //call constructor of public class
      var ag:AdminGlobal = new AdminGlobal();

      //access public variables
      trace(ag.name);
    }

  }

}
于 2012-07-27T14:25:08.007 回答
0

我相信你只是想错了,你可以为你的构造函数提供参数/参数,所以 AdminGlobal 可以声明为

public AdminGlobal(companyId:Number,companyName:String);

然后在公司你可以打电话

new AdminGlobal(this.companyId,this.companyName);

并在 AdminGlobal 的构造函数中对这些变量做任何你需要做的事情

甚至

AdminGlobal(company:Company);

然后在公司做

new AdminGlobal(this);

并且您可以从 AdminGlobal 处理公司的任何公共成员;

于 2012-07-28T19:23:20.800 回答
0

使用“public static var”来访问其他类的变量。

例如;

package com
{
    public class DataVO
    {
        public static var version:String = "1";
    }
}
于 2012-07-27T13:13:41.007 回答