Refactor SizeClasses to not call private methods in the constructor (#12013)
Refactor SizeClasses to not call private methods in the constructor (#12013)

Motivation:

Calling non-static methods from within the constructor that belong to the instance is considered a bad practice and can cause bugs. Beside of this it also has the side effect that we can not define all the fields final even tho these are not modified outside of the constructor.

Modifications:

- Refactor SizeClasses such so it will only use static methods from within its constructor
- Declare everything final that can
- Share some code

Result:

Cleaner / more optimal code that is also easier to maintain
tbrooks8/netty,tbrooks8/netty,johnou/netty,doom369/netty,netty/netty,tbrooks8/netty,doom369/netty,netty/netty,doom369/netty,tbrooks8/netty,doom369/netty,doom369/netty,netty/netty,tbrooks8/netty,johnou/netty,netty/netty,johnou/netty,netty/netty,johnou/netty,johnou/netty