O que é tão bom sobre Java orientada a objetos?
Java é uma forma de programação usando programação orientada a objetos. Como exemplo, imagine que você já tenha escrito um programa de computador para acompanhar as instruções de construção para casas em um novo desenvolvimento. Então, o grande chefe decide sobre um plano modificado - um plano em que metade das casas têm três quartos e a outra metade tem quatro.
Se você usar o velho FORTRAN / style C da programação de computadores, as instruções parecido com este:
Escavar uma vala para o betão basement.Lay em torno dos lados do ditch.Put dois-por-quatro ao longo dos lados para o quadro do porão ....
Isso seria como um arquiteto criando uma longa lista de instruções em vez de um modelo. Para modificar o plano, você tem que ordenar a lista para encontrar as instruções para construir quartos. Para piorar as coisas, as instruções poderiam ser espalhados entre as páginas 234, 394-410, 739, 10 e 2. Se o construtor teve de decifrar instruções complicadas de outras pessoas, a tarefa seria dez vezes mais difícil.
Começando com uma classe, no entanto, é como começar com um plano. Se você decidir ter casas ambos de três e quatro quartos, você pode começar com um modelo chamado de casa projeto que tem um piso térreo e um segundo andar, mas não tem paredes interiores desenhados no segundo andar.
Então você faz mais dois modelos do segundo andar - uma para a casa de três quartos e outro para a casa de quatro quartos. (Você nomeia estes novos modelos as casa de três quartos projeto eo casa de quatro quartos projeto.)
Seus colegas construtor são surpreendidos com o seu senso de lógica e organização, mas eles têm preocupações. Eles colocam uma questão. # 147 Você chamou um dos modelos da 'casa de três quartos "modelo. Como você pode fazer isso se for um projeto para um segundo andar e não para uma casa inteira # 148?;
Você sorri consciente e responder, Nº 147-A três quartos casa plano pode dizer: 'Para obter informações sobre os pisos inferiores, ver a casa modelo original.' Dessa forma, a casa modelo de três quartos descreve uma casa inteira. A casa modelo de quatro quartos pode dizer a mesma coisa. Com esta configuração, você pode tirar proveito de todo o trabalho que você já fez para criar a casa modelo original e economizar muito dinheiro # 148.;
Na linguagem de programação orientada a objetos, as classes de casas de três e quatro quartos são herdando as características da classe casa original. Você também pode dizer que as de três e quatro quartos da casa são as classes estendendo a classe casa original.
A classe casa original é chamado de superclasse das classes de casas de três e quatro quartos. Nesse sentido, as classes de casas de três e quatro quartos são subclasses da classe casa original. Dito de outra forma, a classe casa original é chamado de classe pai de aulas de casas de três e quatro quartos. As classes de casas de três e quatro quartos são classes filhas da classe casa original.
Escusado será dizer que os seus colegas homebuilder estão com inveja. Uma multidão de construtoras é mobbing ao seu redor para ouvir sobre suas grandes idéias.
Então, naquele momento, você deixa cair mais uma bomba: # 147-Ao criar uma classe com subclasses, podemos reutilizar o projeto no futuro. Se alguém vem e quer uma casa de cinco quartos, podemos estender nossa casa modelo original, fazendo uma casa plano de cinco quartos. Nós nunca vai ter que gastar dinheiro para um modelo da casa original novamente # 148.;
# 147 Mas, # 148- diz um colega na fileira de trás, # 147-o que acontece se alguém quiser um design diferente do primeiro andar? Será que o lixo da casa modelo original ou começar a rabiscar todo o projeto original? Isso vai custar muito dinheiro, não vai nº 148?;
Em um tom confiante, você responde, # 147 Não temos que mexer com o modelo casa original. Se alguém quer uma Jacuzzi em sua sala de estar, nós podemos fazer um pequeno e novo modelo, descrevendo apenas a nova sala e chamam isso de Jacuzzi-in-living-room casa projeto. Então, este novo modelo pode se referir ao modelo da casa original para informações sobre o resto da casa (a parte que não é na sala de estar) # 148.;
Na linguagem de programação orientada a objeto, o Jacuzzi-em-sala de estar da casa modelo ainda estende-se a casa modelo original. O plano Jacuzzi ainda é uma subclasse da planta casa original. Na verdade, toda a terminologia sobre superclasse, classe pai, e classe criança ainda se aplica. A única coisa que há de novo é que o projeto Jacuzzi substituições a sala possui no modelo casa original.
Nos dias antes de linguagens orientadas a objetos, mundo da programação viveu uma crise no desenvolvimento de software. Programadores escreveu código, em seguida, descobriu novas necessidades e, em seguida, teve para o lixo o seu código e começar do zero.
Este problema aconteceu uma e outra vez porque o código que os programadores estavam escrevendo não poderia ser reutilizado. Programação orientada a objetos mudou tudo isso para melhor (e, como disse Burd, Java é Nº 147-A Object-Oriented Grande Língua # 148-).