در قطعه کد سوم نتیجه دقیقا چیزی هست که شما نوشتین و درست میفرمایید که هیچ Exception ای صادر نشده. فقط فکر میکنم به خاطر اسم پروژه (DiffThrowAndThrowException) هست که به اشتباه افتادین.
در واقع ()Program . Main برابر DiffThrowAndThrowException . Program . Main ( String [ ] args ) هستش.