Por esse seu exemplo, se os atributos forem diferentes, eu acharia melhor usar tabelas diferentes para cada classe. Agora, se você tivesse algo como uma classe Carro e uma classe CarroDeCorrida (com atributos extras além dos atributos de Carro), acho que seria melhor manter uma tabela com colunas para todos os atributos e uma coluna controlando a diferença de tipos. Isso evitaria joins desnecessários.
Cada caso é um caso, mesmo nas condições que eu falei talvez fosse necessário ter duas tabelas (se o número de atributos que CarroDeCorrida tem além da classe Carro fosse muito maior ou se algum atributo de Carro fosse escondido de CarroDeCorrida) ou, no seu exemplo, ter apenas uma tabela. Deve-se sempre conferir o que é melhor para a sua aplicação.
Ironlynx
Exato.Isso parece aqueles excercícios de faculdade, mais precisamente AOO(Análise Orientada a Objeto), em que o professor acha que tudo se resolve com um exemplinho desses.
Escuta, essa classe Veículo só serve para dizer que todos são “Veículos”???Ela tá no seu programa como uma mera ‘marcação’?É uma interface… :roll:
cleriston
Legal!
Valeu pelas ajudas!
Mas na realidade, eu tenho apenas a classe veiculo, e nela tem um atributo em que eu seto Carro, Moto ou Caminhão.
Mas veio na cabeça, se caso precisasse ter Carro, Moto e Caminhão separados, por ter metodos iguais q fazem coisas diferentes… como eu iria gravar as classes no banco. Fico grato