Java 使用线程并行运行类的方法

Java 使用线程并行运行类的方法,java,multithreading,Java,Multithreading,我正在使用java。我能够使用包名获取类名,通过初始化类并使用invoke属性运行方法来获取特定类中的所有方法,能够依次运行方法 Class c = Class.forName(Package.ClassName); Object obj = c.newInstance(); Method[] method = c.getDeclaredMethods(); for(Method m1 : method) { for(String sfunctionname :sFunctionName) if

我正在使用java。我能够使用包名获取类名,通过初始化类并使用invoke属性运行方法来获取特定类中的所有方法,能够依次运行方法

Class c = Class.forName(Package.ClassName);
Object obj = c.newInstance();
Method[] method = c.getDeclaredMethods();
for(Method m1 : method)
{
for(String sfunctionname :sFunctionName)
if(sfunctionname.equals(m1.getName()))
{
System.out.println("Method Name " + m1.getName());
mth = m1.getName();
meth = (Method) obj.getClass().getMethod(sfunctionname);
    meth .invoke(obj)
    }
    }
这些类的结构定义如下

private void class1() 
{
    method1();
    method2();
    method3();

}
private void class2() 
{
    method1();
    method2();
    method3();
}
等等

现在我想并行运行这些类(假设每个类都是一个测试用例),即第一个线程中一个类的所有方法,第二个线程中第二个类的方法,等等。。 class1中的所有方法都应该添加到一个线程execute中 对于class2也是一样,所有属于它的方法都应该在第二个线程中并行执行,以此类推。。在

如何使用多线程处理。我已经阅读了文档,但无法在此处了解如何使用callablehere

注意:在内部,一个方法依赖于它所属的类中的另一个,应该按顺序运行(可选:返回一些值)

谁能给我指点一下方向吗


提前感谢

您可以简单地循环并创建线程

for (final String className : classNameList) {
    new Thread(new Runnable() {
        void run() {
            Class c = Class.forName(className);
            ...

        }
    }).start();
}
但我建议您不要使用多线程,除非您真正了解多线程及其副作用