Java 类型不匹配:无法从J48转换为分类器

Java 类型不匹配:无法从J48转换为分类器,java,weka,Java,Weka,我是Weka的新手。我想使用Weka自我培训模式。我在创建项目时已经导入了weka.jar。但我想知道如何解决这个问题? 提前感谢您的帮助 导入java.io.File; 导入weka.classifiers.Classifier; 导入weka.classifiers.trees.J48; 导入weka.core.Instances; 进口weka.core.converters.ArffLoader; 公共类J48{ 公共静态void main(字符串[]args){ //TODO自动生成

我是Weka的新手。我想使用Weka自我培训模式。我在创建项目时已经导入了weka.jar。但我想知道如何解决这个问题? 提前感谢您的帮助

导入java.io.File;
导入weka.classifiers.Classifier;
导入weka.classifiers.trees.J48;
导入weka.core.Instances;
进口weka.core.converters.ArffLoader;
公共类J48{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
分类器m_分类器=新的J48();

您创建了一个名为
J48
的新类,它不继承任何基类或实现任何接口,因此错误消息是正确的:

无法从J48转换为分类器

您可能想实例化Weka的J48分类器。您可以使用其完全限定名:

Classifier m_classifier = new weka.classifiers.trees.J48();
(另见:)

但通常应避免这些名称冲突,并将类重命名为其他名称,例如:

public class J48Demo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Classifier m_classifier = new J48();

您已经导入了正确的包,因此通过重命名类来解决名称冲突
new J48()
将引用正确的类。

欢迎使用stackoverflow。最佳做法是以文本形式发布错误消息的内容。不鼓励以图像形式发布文本。