Per*_*son 3 java design-patterns class-design class
我有一堆扩展抽象Base类的类.每个子类都采用构造函数中的数组(不同长度取决于类).这些课程可以由其他人编写.
找出类需要的数组长度的最佳方法是什么?我可以:(A)要求每个派生类都有一个静态方法,返回长度.但是,基类不能强制执行此操作,因为抽象静态方法在java中不起作用.(B)每个派生类都有一个没有参数的构造函数,我构造这样的类只是为了能够调用countParameters()方法,我可以从Base类强制执行.这感觉"笨拙",因为我对创建这样的对象不感兴趣,但只需要一些关于它的信息.
原因是我正在创建一个GUI,它使用户能够创建Derived类的实例,但每个Derived类都使用不同数量的参数.也就是说,我需要知道如何在创建类之前绘制GUI.
编辑:我可以要求每个Derived类都有一个私有构造函数,没有参数,并且使用反射我可以调用countParameters()方法.
EDIT2:实际上,我感兴趣的是参数的名称是什么.也就是说,如果Derived类具有构造函数
public Derived(double name1,double name2,...)
Run Code Online (Sandbox Code Playgroud)
我需要一种方法来生成String []数组
{name1,name2,...}
Run Code Online (Sandbox Code Playgroud)
我想如果不创建类的实例就不可能做到,但是为了让用户能够创建这样的类,他/她需要参数名称!片刻22.
| 归档时间: |
|
| 查看次数: |
120 次 |
| 最近记录: |