Minha dúvida é a seguinte:
Tenho uma classe Vehicle e uma classe “filha” Car, que herda de sua superclasse Vehicle:
public class Car extends Vehicle { …
Esta classe filha “Car” está num pacote em um nível abaixo “Vehicle”.
Sendo assim, quando compilo, ele diz que não consegue achar a classe estendida (Vehicle) como “cannot resolve the symbol”, apesar da estrutura correta dos import/package.
Alguém sabe como eu poderia resolver este problema, ou seja, trabalhar com superclasses em packages diferentes das subclasses, sem ter que colocá-las no mesmo pacote.
Grato desde já.
Fábio Peclat
tenha certeza que todas as classes estão no classpath :lol:
basta vc importar o pacote onde a classe Vehicle esta
suponde que a classe Vehicle estaja no pacote x, e a classe Car no pacote x.Vehicle, na classe Car vc tem que importar o pacote x… tb certifique-se que a classe Vehicle nao tenha erros, pois se ela nao compilar a classe Car nao vai encontra-la
Felipe,
Obrigado pela orientação. Realmente é necessário que se coloque a classe “pai” dentro de uma package.
Assim, minha classe pai ficou assim:
package vehicle;
import vehicle.filhos.*;
e minhas classes “filhas” ficaram assim:
package vehicle.filhos;
import vehicle.*;
Apesar disso eu ainda penei por um outro problema: a sintaxe de compilação.
Para compilar, foi necessário ir para a pasta acima da pasta vehicle e compilar utilizando o seguinte:
javac vehicle\Vehicle.java
java vehicle.Vehicle
Muito obrigado!!!