Dentro de uma classe é possível definir dois ou mais métodos que usam o mesmo nome, mas tem número diferente de parâmetros. Quando isso ocorre, estes métodos são chamados de sobrecarregados e tal processo é referido como sobrecarga de método.

Sobrecarga de método é uma forma de realização de polimorfismo. Sobrecarga de métodos é realizado em concordância com as mesmas regras da sobrecarga de função.

Se a função chamada não tem correspondência exata, o compilador busca por uma função adequada em três níveis seqüencialmente:

1.busca dentre os métodos da classe;
2.busca dentre os métodos da classe base, consistentemente a partir do ancestral mais próximo até o mais distante.
3.busca entre outras funções.

Se não houver correspondência exata em todos os níveis, mas várias funções adequadas em diferentes níveis foram encontradas, a função encontrada no menor nível é usada. Dentro de um nível, não pode haver mais de uma função adequada.