Длина (количество методов) кода класса и производительность - PullRequest
0 голосов
/ 07 мая 2011

Какая зависимость существует между количеством методов или длиной исходного кода класса и производительностью (использование памяти, скорость выполнения)?Лучше создать как можно более простой класс, или я могу реализовать так, как может функционировать, как я хочу, для одного класса?Загружает ли Java весь класс в память, когда к объекту обращаются интерфейсы?

Ответы [ 4 ]

6 голосов
/ 07 мая 2011

Вы думаете об этом по полностью неправильной причине.

Забудьте о производительности.Это не имеет значения в этом вопросе.Совсем.

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

3 голосов
/ 07 мая 2011

В вашем вопросе много частей, но о производительности и размере класса обычно не следует говорить вместе. Создавайте небольшие классы, потому что их легче поддерживать и отлаживать.

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

2 голосов
/ 07 мая 2011

Да, Java загружает весь класс в память. Но, вероятно, это не класс , который потребляет большую часть памяти, а скорее количество экземпляров ее.

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

1 голос
/ 07 мая 2011

AFAIU, количество методов в классе (или, точнее, размер класса) будет влиять только на время загрузки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...