Hvorfor kan statiske klasser ikke have ikke-statiske metoder og variabler?

Hvorfor kan statiske klasser ikke have ikke-statiske metoder og variabler?

Statiske klasser kan ikke instantieres i første omgang, så selvom du kunne erklære ikke-statiske (instans)medlemmer, kan de aldrig tilgås. Da det virkelig ikke er en mening at tillade det af den grund, forbyder sproget det simpelthen.

Husk, at statiske klasser kun er klasserne , mens der er to ting, der er direkte relateret til ikke-statiske klasser:klasserne sig selv og forekomsterne/objekterne af klasserne.

En ikke-statisk klasse kan have både statiske og ikke-statiske medlemmer, så de statiske medlemmer gælder for klassen, hvorimod de ikke-statiske medlemmer gælder for forekomsterne af den pågældende klasse.


Statisk klasse kan ikke indeholde ikke-statiske medlemmer, fordi den per definition ikke kan instansieres, så der er ingen mulighed for at bruge disse medlemmer.

Statiske medlemmer i ikke-statisk klasse kan dog bruges uden at have klasseinstans - et lidt andet scenarie, dvs. til hjælpemetoder eller fabriksmetoder.