Klingt eher so, als würdest du noch die absoluten Java-Grundlagen lernen. ^^" Bytecode ist dann doch was deutlich mehr in die Tiefe gehendes – bzw. eigentlich was komplett anderes, was man beim normalen Java-Programmieren überhaupt nicht braucht.

Ahja, und zur Sicherheit: der Ausdruck lautet public static void main([U]S[U]tring[] args). "String" ist ein Klassenname und muss daher groß geschrieben werden, um vom Compiler erkannt zu werden. Und einen Variablennamen braucht das Argument der Methode auch – "args" ist hier üblich, kann aber durch jeden anderen gültigen Variablennamen ersetzt werden.
(Der Teil in den Klammern bedeutet dann eben, dass die Methode ein einzelnes Argument erwartet, das den Typ "Array von Strings" (String[]) hat und dem der Name "args" zugewiesen wird. Dort landen dann zusätzliche Argumente – falls du das Programm z.B. mit java Test foo startest, und in der Klasse Test die main-Methode ist, ist dann args[0] gleich "foo".)