В интервью Java Q & В списке, который у меня есть, говорится, что в Java вы можете сделать объект неизменным тремя способами. Один из способов:
Убедитесь, что методы не могут быть переопределены путем создания класса (Сильная неизменность) или сделать ваши методы окончательными (слабый неизменность).
Как получается, что принятие окончательных методов считается менее неизменным, чем окончание класса? Кроме того, что подразумевается под сильной неизменностью и слабой неизменностью?