2012-03-27 1 views
0


Я создаю проект в Netbeans IDE 6,9 В проекте у меня есть интерфейс IBusinessLogic Во втором проекте я создал класс BusinessLogic, который реализует IBusinessLogic В третьем проекте я создаю объект BusienssLogic и присвоение этого объекта ссылке IBusinessLogic. Я не получаю ошибку при записи, но когда я Очистить и построить этот третий проект, я получаю исключение, что ниже:чистый и построить не удалось в NetBeans

 
incompatible types 
found : com.abc.businesslogic.BusinessLogic 
required: com.abc.businesslogic.interfaces.IBusinessLogic 
       com.abc.businesslogic.interfaces.IBusinessLogic logic = bl; 
Note: Some input files use or override a deprecated API. 
Note: Recompile with -Xlint:deprecation for details. 
Note: Some input files use unchecked or unsafe operations. 
Note: Recompile with -Xlint:unchecked for details. 
1 error 
D:\ProjectsFeb12\Service\nbproject\build-impl.xml:531: The following error occurred while executing this line: 
D:\ProjectsFeb12\Service\nbproject\build-impl.xml:261: Compile failed; see the compiler error output for details. 
BUILD FAILED (total time: 3 seconds) 

Как я знаю, что я могу присвоить объект суб типа в ссылке супер типа, то это Исключение должно быть IDE. Как я могу это решить? Я переместил весь свой код в новый проект, но не работал.

Код:

 
package com.abc.workerhandlers; 

import com.abc.businesslogic.BusinessLogic; 
import com.abc.businesslogic.interfaces.IBusinessLogic; 

public class MQ2MQWorker1 { 

    MQ2MQWorker1(){} 

    public void init(){ 

       BusinessLogic bl = new BusinessLogic(); 
       IBusinessLogic logic = bl; // This line is giving problem 
    } 
} 

При запуске проекта он выполняет прекрасно, но банку проекта не создается в DIST каталоге.

+0

Вы можете оставить свой кусок кода, где происходя ошибка? –

+0

Вы уверены, что 'com.abc.businesslogic.BusinessLogic' реализует' com.abc.businesslogic.interfaces.IBusinessLogic'? –

+0

@JimGarrison Я уверен. – sjain

ответ

0

Вы уверены, что правильный класс в classpath? Кстати, вы не должны писать

BusinessLogic bl = new BusinessLogic(); 
IBusinessLogic logic = bl; // This line is giving problem 

, но вместо этого просто IBUsinessLogic logic = new BusinessLogic();