Em Java, uma função é chamada de " método", e seus parâmetros são chamados Um método pode ter qualquer número de argumentos , mas um único cabeçalho método pode levar apenas um argumento definido "argumentos ". definido . Para aceitar conjuntos diferentes , você deve criar vários cabeçalhos de método para cada conjunto diferente, ou " sobrecarga " do método. Sobrecarga Métodos
sobrecarregar um método, simplesmente declarar vários métodos com o mesmo nome, mas com argumentos diferentes. Qualquer objeto dessa classe será capaz de chamar tanto a versão do método inserindo ou conjunto de parâmetros como argumentos. Você também pode ligar para uma versão diferente de um método sobrecarregado dentro do corpo desse método (por exemplo, " overloadedMethod ()" pode chamar " overLoadedMethod (int, double) " , enquanto que a versão também foi declarada ) .
Sobrecarregar o construtor
por padrão, todas as classes em Java tem um construtor que não tem argumentos , que simplesmente instancia um objeto e não toma nenhuma outra ação . Assim, você cria uma instância da classe , chamando que construtor. No entanto, se você sobrecarregar o construtor com uma versão que leva vários argumentos , você desativar o "default" construtor sem argumento , que pode quebrar outras partes do código que confiar em que o construtor . Você terá que definir um novo construtor sem argumentos , se você quiser a funcionalidade sem argumento de volta.
Benefícios da Sobrecarga
Um dos benefícios da sobrecarga é que que permite a personalização de invocação de método . Se você deseja criar um método que leva flags opcionais, você pode sobrecarregar o método para criar , essencialmente, duas versões: uma que leva apenas os argumentos obrigatórios , e que leva todos os argumentos possíveis . No corpo do método com menos argumentos , basta ligar para o outro método , passando os argumentos para esse método , bem como os valores padrão para as opções opcionais .
Sobrecarga e Herança
Quando uma classe herda métodos da sua super classe, ele também herda todos os métodos sobrecarregados também. Ele também pode redefinir métodos herdados . Quando você substituir um método pai sobrecarregado, a classe filha vai usar seus próprios métodos sobrescritos sempre que encontra-los - caso contrário , ele irá usar a versão da classe pai
.