Использование ключевого слова static при создании пользовательского класса адаптера ViewPager

Я знаю основы программирования java и в настоящее время пытается сделать android приложения. Я знаю, что делать что-либо статическое-хорошая практика, так как это помогает в управлении памятью . Потому что, если переменная может быть общей для всех экземпляров класса, то лучше иметь эту переменную в качестве статической, а не позволять всем экземплярам иметь свою собственную копию этой переменной(следовательно, увеличение памяти, необходимой для загрузки класса).

Я прочитал этот ответ на очень похожий вопрос, но не смог его понять.

Ссылаясь на вышеизложенный ответ, он говорит, что-static поля прикреплены к экземпляру класса, ну разве каждый экземпляр не имеет все методы, переменные и статические/нестатические вложенные классы прикреплены к себе?

Мой Фактический Вопрос-

Ранее я просматривал это руководство для понимания viewpagers. Я заметил, что класс myPagerAdapter был сделан статическим. Какой от этого прок?

1 ответ

  1. staticПеременная принадлежит классу и совместно используется всеми экземплярами класса. Существует только одна копия на класс. Напротив, переменная экземпляра не используется совместно с другими экземплярами. Каждый экземпляр имеет свою собственную копию переменной.

    Можно утверждать, что статическая переменная экономит память. Но когда решается, должно ли staticключевое слово использоваться с переменной, я думаю, что более важно определить, должен ли кусок информации, представленный этой переменной, быть общим для всех экземпляров одного и того же класса (т. е. должна быть только одна копия на класс), или каждый экземпляр должен иметь свою собственную копию.