У Java, статичний Ключове слово можна використовувати зі змінною, константою та функціями. Основна мета використання в статичний Ключове слово — керувати пам’яттю, щоб ми могли її ефективно використовувати. У цьому розділі ми обговоримо статична функція в Java.
що таке особливий символ
Статична функція
Якщо ключове слово статичний має префікс перед назвою функції, функція називається a статична функція . Його часто називають a метод .
Метод — це група змінних і операторів, які функціонують разом як логічна одиниця. Як і поля, методи можуть мати модифікатори (наприклад, private, public або static). Методи також мають тип повернення (може бути недійсним, якщо метод нічого не повертає). Повернутий тип може бути посиланням (наприклад, об’єкт або масив). Метод може мати будь-яку кількість параметрів або аргументів.
Коли функція є статичний , це дійсно частина класу, а не частина окремих об’єктів у класі. Це означає, що статичні функції існують ще до створення будь-яких об'єктів.
Найкращим прикладом статичного методу є головний() метод.
Властивості статичної функції
- Він може отримати доступ лише до статичних членів.
- Його можна викликати без примірника.
- Він не пов'язаний з об'єктом.
- Статична функція не може отримати доступ до нестатичних елементів даних.
Оголошення статичної функції
Оголошення статичної функції в Java те саме, що оголошення методу. Функція складається з двох частин прототип і тіло функції.
The прототип функції містить сигнатуру функції, яка включає назву функції, тип повернення, специфікатор доступу та список параметрів. The орган функції містить логіку або функції, які потрібно виконати.
Синтаксис:
[access specifier] static [return type] [function name] (parameter list) { //body of the function }
У наведеному вище синтаксисі специфікатор доступу та список параметрів є необов’язковими. Функція може мати або не мати списку параметрів. Наприклад:
public static int sum(int a, int b) { int c=a+b; return c; }
Виклик статичної функції
У Java ми не можемо викликати статичну функцію за допомогою об’єкта. Він викликається за допомогою назва класу .
[class name].[method name]
Наприклад:
Math.sqrt(a); //calling the square root function of the Math class
Приклад статичної функції в Java
Давайте створимо a Java програма з якого ми можемо чітко зрозуміти різницю між статичними та нестатичними функціями.
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(); } }
Вихід:
A non-static function is called. The static function is called.
Давайте створимо програму Java і викличемо статичний метод з іншого статичного методу навіть без створення об’єкта класу.
CalculateCube.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(); } }
Вихід:
Cube of 7 is: 343
Обмеження статичного методу
Є два основних обмеження для статичного методу. Вони є:
- Не можна використовувати статичний метод нестатичний члени даних або викликати нестатичний метод безпосередньо.
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); } }
Вихід: