A diferença entre métodos estáticos e métodos de instância é refletida principalmente em dois aspectos:
Ao chamar métodos estáticos externamente, você pode usar o "nome da classe. Nome do método" Método ou o "nome do objeto. Nome do método". O método de exemplo é apenas o último método. Ou seja, chamar um método estático pode eliminar a necessidade de criar um objeto.
Ao acessar os membros desta classe, os métodos estáticos permitem apenas o acesso a membros estáticos (ou seja, variáveis estáticas de membros e métodos estáticos), mas não permitem acesso às variáveis de membros da instância e métodos de instância; Os métodos de instância não têm essas restrições.
Os exemplos a seguir mostram essa diferença.
1. Exemplo de chamada de método estático
// -------
O programa a seguir usa dois formulários para chamar métodos estáticos.
// --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
O programa chama métodos estáticos duas vezes, tanto permitidos quanto a saída do programa é a seguinte:
Este é um método estático. Esse é um método estático.
Permitir que os métodos estáticos sejam chamados sem criar objetos é que, para reduzir o incômodo dos programadores ao chamar certos métodos comuns, o Java permite que os programadores usem métodos na linguagem C tradicional usando funções. Um exemplo típico é que alguns programas anteriores usam "math.ramdon ()" para obter números aleatórios.
Outro representante típico é as matrizes, a ferramenta de processamento de matrizes
2. Exemplo de variáveis de membro de acesso ao método estático
// --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // Correto, você pode ter sua própria variável local SA = 15; // correto, você pode usar a variável estática ia = 30; // Correto, você pode usar a variável de instância statMethod (); // correto, você pode chamar o método estático}}
Este exemplo pode realmente ser resumido em uma frase: um método estático pode acessar apenas membros estáticos, e um método de instância pode acessar membros estáticos e de instância. A razão pela qual os métodos estáticos não podem acessar variáveis de membro da instância é porque as variáveis de membro da instância pertencem a um objeto e, quando os métodos estáticos são executados, os objetos não existem necessariamente. Da mesma forma, como um método de instância pode acessar variáveis de membro da instância, se um método estático puder chamar um método de instância, ele permitirá indiretamente que ele use a variável do membro da instância, para que não possa chamar o método da instância. Com base no mesmo princípio, a palavra -chave que isso não pode ser usada em métodos estáticos.
O método principal () é um método estático típico, que também segue as regras dos métodos estáticos gerais, para que possa ser chamado pelo sistema antes de criar o objeto.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.