Могу ли я написать код, используя только статические (классовые) методы?

#java

#java

Вопрос:

Итак, мой вопрос основан на моей домашней инструкции.

Профессор не ответил сразу, так что я здесь!

«Используйте статические (классовые) методы для создания и печати 2-мерных массивов символов в разных шаблонах». Это цель назначения.

Это означает, что я должен писать код только с использованием public class () iAmDumbSorry методов?

Или я что-то недопонимаю?

Комментарии:

1. Это означает использование статических методов, мне кажется довольно понятным.

Ответ №1:

Конечно, можно написать java-код, который полагается исключительно на статические поля / методы.

Но дело в том, что статика имеет различные последствия, поскольку она просто убивает вашу способность переопределять методы. Другими словами: только статический означает: никакого полиморфизма. Что делает использование языка ООП практически бессмысленным.

Иногда учебный план начинается с «только статический», предполагая, что учащимся будет легче следовать этому. И тогда нестатические вещи исключаются и объясняются позже.

Итак, ваш код будет выглядеть так:

 class Foo {
  static int someInt;
  static void bar() { ... }
 

и

 public class Main {
  public static void main(... {
    Foo.bar();
    if (Foo.someInt == ) ..
 

Короче говоря: возьмите это неясное задание в качестве мотивации, чтобы узнать о различиях между статическим и нестатическим и посмотреть, какое влияние это оказывает на вашу способность выражать свои мысли в коде.

Ответ №2:

Да, эти классы называются служебными классами. Вы можете сравнить его с java.util.Collections , который состоит только из статических методов.