Fala Ígor,
Pelo que entendi, acho que você está confundindo um pouco os conceitos de orientação a objetos. O que você realmente deseja fazer é simplesmente classes derivadas da classe veículo, e para isso elas não precisarm ser uma subclasse de veículo. Subclasses são um recurso interessante, por exemplo, quando o que desejamos fazer é algo parecido com uma agregação mas com uma classe que só faz sentido ou será utilizada dentro de veículo. É por esse motivo que moto e carro não são acessíveis fora de veículo. Por exemplo, na classe veículo, um possível uso para subclasses seria para criar uma classe que defina coisas inerentes ao veículo e de uso interno à própria classe veículo, tais como acelerador, câmbio, direção, etc. Com relação às derivações moto e carro, declare-as fora de veículo, em arquivos separados. Esta é a melhor maneira de resolver este problema e creio que faz exatamente o que você deseja. Outra dica interessante: na página da Sun, existe um guia de padrões de programação em Java, que sugere uma formatação para o código Java. Acostumando-se a utilizá-la, você garante um nível de qualidade no seu código que é aceito internacionalmente. Bom, é isso, espero que tenha ajudado, Luís Fernando M. Rosa Engenheiro de Software Ícaro Informática Campinas - SP Igor Betim de Freitas wrote: > Criamos um arquivo com as definições da Classe Veículo, e criamos > algumas > SubClasses para Veículo: > > P > > > > Arquivo ==> Veiculo.java > > abstract class veiculo{ > // aqui declarei métodos e atributos... > > // depois criei uma série de Sub Classes para a classe Veículo > class moto extends veiculo{ > } > > class jeep extends veiculo{ > } > } > > Em um arquivo separado, tenho o programa principal: > > Arquivo ==> principal.java > > class principal{ > public static void main(String args[]){ > moto obj_moto; > jeep obj_jeep; > } > } > > Na hora que tento compilar(javac principal.java veiculo.java) dá o > seguinte > erro: > principal.java -- cannot resolve this symbol > Location -- principal.java > Symbol -- class lama > > É como se o Java não encontrasse estas subclasses da classe > veículo. Se eu pegar a mesma definição da SubClasse moto, por exemplo > e > colocar em um arquivo separado, compila normalmente(javac > principal.java > moto.java veiculo.java). > > Como podemos resolver este problema?" > > Igor Freitas > > ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------