Manter as coisas simples com classes Java

A maioria dos programas de computador funcionar totalmente no reino virtual. Eles não têm tijolos, pregos, ou vigas. Então você pode digitar um programa de computador bastante complicado em minutos. Mesmo com nenhum músculo e nenhum equipamento pesado, você pode criar uma estrutura cuja complexidade rivaliza com a de muitas estruturas físicas complicadas. Você, desenvolvedor, tem o poder de construir intrincados, pontes virtuais.

Um dos objetivos da programação de computadores é para gerenciar a complexidade. Um bom aplicativo simplesmente não é útil ou visualmente atraente - código de um bom app é muito bem organizado, fácil de entender e fácil de modificar.

Certas linguagens de programação, como C ++, suporte herança múltipla, em que uma classe pode ter mais de uma classe pai. Por exemplo, em C ++ você pode criar um Livro classe A Material de ensino classe, e uma Livro didático classe. Você pode fazer Livro didático prolongará tanto Livro e Material de ensino.

Esta característica torna hierarquias de classe bastante flexível, mas também faz as mesmas hierarquias extremamente complicado. Você precisa regras complicadas para decidir como herdar a mover métodos de tanto o computador de Rato classe e os roedores do Rato classe.

Para evitar toda esta complexidade, Java não suporta herança múltipla. Em Java, cada classe tem um (e apenas um) superclasse. Uma classe pode ter qualquer número de subclasses. Você pode (e vai) criar muitas subclasses de Android do Atividade classe.

E outros desenvolvedores criem suas próprias subclasses de Android do Atividade classe. Mas as classes não têm múltiplas personalidades. Uma classe Java pode ter apenas um pai. o Executivo classe que se refere este anúncio não pode se estender tanto o Empregado em tempo integral classe eo PartTimeEmployee classe.

classe Executive pacote org.allyourcode.company-pública estende FullTimeEmployee {double Executivo bonus-pública () {} Executivo pública (String nome, String jobTitle, o dobro do salário, bônus duplo) {this.name = name-this.jobTitle = jobTitle- this.salary = salário-this.bonus = bônus -} @ pay double Overridepublic () {return salário + bônus de}}

menu