Java instantiate Kurzes Objekt in Java

Ich habe mich gefragt, warum wir Folgendes tun können:

Long l = 2L;
Float f = 2f;
Double d = 2d;

oder auch

Double d = new Double(2);

und nicht

Short s = 2s; //or whatever letter it could be

Noch

Short s = new Short(2); //I know in this case 2 is an int but couldn't it be casted internally or something?

Warum müssen wir die Konstruktoren entweder mit einem String oder einem Short nehmen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage