Em Java, o estático A palavra-chave pode ser usada com variáveis, constantes e funções. O objetivo principal do uso do estático A palavra-chave é gerenciar a memória para que possamos usá-la com eficiência. Nesta seção, discutiremos o função estática em Java.
comentários java
Função Estática
Se a palavra-chave estático é prefixado antes do nome da função, a função é chamada de função estática . Muitas vezes é chamado de método .
Um método é um grupo de variáveis e instruções que funcionam juntas como uma unidade lógica. Assim como os campos, os métodos podem ter modificadores (como privado, público ou estático). Os métodos também possuem um tipo de retorno (pode ser nulo se o método não retornar nada). O tipo de retorno pode ser um tipo de referência (como um objeto ou uma matriz). Um método pode ter qualquer número de parâmetros ou argumentos.
Quando uma função é estático , ele realmente faz parte da classe e não dos objetos individuais da classe. Isso significa que funções estáticas existem antes mesmo de criar qualquer objeto.
O melhor exemplo de método estático é o principal() método.
Propriedades da função estática
- Ele pode acessar apenas membros estáticos.
- Pode ser chamado sem uma instância.
- Não está associado ao objeto.
- Membros de dados não estáticos não podem ser acessados pela função estática.
Declarando uma função estática
A declaração de uma função estática em Java é o mesmo que a declaração de um método. A função tem duas partes: função protótipo e corpo da função.
O protótipo de função contém a assinatura da função que inclui o nome da função, tipo de retorno, especificador de acesso e lista de parâmetros. O corpo funcional contém a lógica ou funcionalidade a ser executada.
Sintaxe:
[access specifier] static [return type] [function name] (parameter list) { //body of the function }
Na sintaxe acima, o especificador de acesso e a lista de parâmetros são opcionais. Uma função pode ou não ter uma lista de parâmetros. Por exemplo:
public static int sum(int a, int b) { int c=a+b; return c; }
Chamando função estática
Em Java, não podemos chamar a função estática usando o objeto. Ele é invocado usando o nome da classe .
[class name].[method name]
Por exemplo:
Math.sqrt(a); //calling the square root function of the Math class
Exemplo de função estática em Java
Vamos criar um Programa Java a partir do qual podemos entender claramente a diferença entre funções estáticas e não estáticas.
StatciFunctionExample.java
class Demo { //non-static function void display() { System.out.println('A non-static function is called.'); } //static function static void show() { System.out.println('The static function is called.'); } } public class StaticFunctionExample { public static void main(String args[]) { //creating an object of the class A Demo obj = new Demo(); //calling a the non-static function by using the object of the class obj.display(); //calling a static function by using the class name Demo.show(); } }
Saída:
A non-static function is called. The static function is called.
Vamos criar um programa Java e chamar um método estático de outro método estático mesmo sem criar um objeto da classe.
CalculaCube.java
public class CalculateCube { //defining a static method static void cube() { int x=7*7*7; System.out.println('Cube of 7 is: '+x); } public static void main(String args[]) { //calling the static method without using the object of the CalculateCube class cube(); } }
Saída:
Cube of 7 is: 343
Restrições do Método Estático
Existem duas restrições principais para o método estático. Eles são:
- O método estático não pode usar não estático membros de dados ou chamar um método não estático diretamente.
Demo.java
class Demo { int num=100; //non-static variable //static method public static void main(String args[]) { //trying to access non-static data member from static context System.out.println(num); } }
Saída: