 <p>This 'Class' definitoin is special only because it use 'generic' type parameter? if you do not know what 'generic' means, I think you should read a java book before read/write java code like this ~</p> <p><code>class ListNode&lt;K, V&gt;</code> means the <code>ListNode</code> class uses two 'unknown' or 'general' variable type (i.e. K V), you can indicate the specific type when you use the class</p> <p><code>K extends Comparable&lt;K&gt;</code> meands that the 'K' type is restricted to be 'Comparable'</p>