Рубрики

Отслеживание статических функций в Java

В Java, если имя статической функции производного класса совпадает со статической функцией базового класса, тогда статическая функция базового класса скрывает (или скрывает) статическую функцию производного класса. Например, следующий код Java печатает «A.fun ()»
Примечание. Статический метод — это свойство класса, поэтому, если статический метод вызывается из имени класса или объекта, имеющего контейнер класса, тогда метод этого класса вызывается не методом объекта.

// имя файла: Main.java

class A {

   static void fun() {

      System.out.println("A.fun()");

   }

}

  

class B extends A { 

   static void fun() {   

      System.out.println("B.fun()");

   }

}

  

public class Main {

   public static void main(String args[]) {

      A a = new B();

      a.fun();  // печатает A.fun ()

   }

}

Если мы сделаем A.fun () и B.fun () нестатичными, то вышеприведенная программа выведет «B.fun ()».

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Рекомендуемые посты:

Отслеживание статических функций в Java

0.00 (0%) 0 votes