如何在Java类中定义接口属性并如何使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Java类中定义接口属性并如何使用相关的知识,希望对你有一定的参考价值。

interface IFoo
final int fvar=123;
static int svar=456;


class Test implements IFoo
public void method() 
PrintWriter pw=new PrintWriter(System.out,true);
pw.println("IFoo.fvar="+fvar); // 使用接口的fvar变量
pw.println("IFoo.svar="+svar); // 使用接口的svar变量



public static void main(String[] args) throws Exception 
      (new Test()).method(); 

参考技术A 在接口定义好属性变量后,只要实现了该接口,那么就可使用了

在 Flash Pro 中,如何让属性面板显示您在 ActionScript 类中定义的属性?

【中文标题】在 Flash Pro 中,如何让属性面板显示您在 ActionScript 类中定义的属性?【英文标题】:In Flash Pro, how to get the Properties panel to expose the properties you define on your ActionScript class? 【发布时间】:2014-12-21 01:42:20 【问题描述】:

我正在涉足游戏设计并尝试为游戏创建一些角色。现在我刚刚创建了一个包含矩形的电影剪辑。 MovieClip 符号扩展了我在 Flash Builder 中创建的一个类,该类实现了怪物的逻辑。然后我可以将这个怪物符号的一个实例从库中拖到舞台上,当我运行模拟时代码就可以工作了。到目前为止,一切顺利。

现在我想创建几个怪物,都略有不同:

public class Monster extends MovieClip

    public var isFriendly:Boolean = true;
    public var strength:int = 10;
    public var catchPhrase:String = "Booyah!";

    public function Monster()
    
    

一种方法是为每个扩展 Monster 的怪物编写一个新类,并在构造函数中设置我想要的属性(我还必须在库中为每个变体创建一个唯一的符号) .但是,如果我的怪物只是属性值不同,这似乎有点过头了。

查看 Flash Professional 使用界面,我看到“属性”面板的最底部有一个部分,看起来像一个以“属性/值”为标题的小表格。我可以使用它在 Flash Professional UI 中以某种方式设置我的类的属性吗?我找不到有关如何使用它的任何信息。

【问题讨论】:

【参考方案1】:

好的,我想通了。关键是将我的符号转换为 Flash 组件。

首先我编辑了我的 ActionScript 类以导出我想要设置的属性(包括 Inspectable 标记):

public class Monster

    private var _catchPhrase:String;

    public function Monster()
    
    

    public function get catchPhrase():String
    
        return _catchPhrase;
    

    [Inspectable(name = "catchPhrase", type = String, defaultValue = "Booyah!")]
    public function set catchPhrase(value:String):void
    
        _catchPhrase = value;
    


然后我右键单击库中的怪物符号并选择“组件定义...”。这带来了组件定义对话框。然后,我在“类”字段中输入了我的 ActionScript 类的名称并单击复选标记进行验证。 Flash 然后自动生成了我需要的属性。

我还发现本教程很有帮助: http://redbjarne.wordpress.com/actionscript-3-0-custom-components-from-hell/

【讨论】:

以上是关于如何在Java类中定义接口属性并如何使用的主要内容,如果未能解决你的问题,请参考以下文章

c#如何在父类(或是接口)当中定义一个子类必须要重写的字段(属性)?

在Java接口的实现类中如何调用这个接口中定义的变量?

java 定义类 如何写?

如何创建和启动一个线程

如何在Java中使用通用接口获取实现类中的方法

如何调用内部类中的静态方法