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] 
-------------------------------------------------------------------------

Responder a