Por que C # e Java exigem que tudo esteja em uma classe?

Parecia que essa pergunta deveria ter sido feita antes, mas a pesquisa não encontrou nada.

Eu sempre me perguntei qual é o sentido de nos fazer colocar todo código dentro de uma classe ou interface. Eu me lembro que havia algumas vantagens em exigir umamain() funcionam como C, mas nada para classes. Linguagens como Python são, de certa forma, ainda mais orientadas a objetos que Java, uma vez que não possuem primitivas, mas você pode colocar o código onde quiser.

Isso é algum tipo de "má interpretação" do OOP? Afinal, você pode escrever código de procedimento como faria em C e colocá-lo dentro de uma classe, mas não será orientado a objetos.

questionAnswers(3)

yourAnswerToTheQuestion