Это именно то, как они его проектировали. Следствием этого, вы можете спросить, почему его кузен (C#) позволяет Main метод с параметрами или без них, это именно то, как они его разрабатывали.
Там нет серьезного обоснования, у каждого языкового дизайнера есть свои предпочтения, на каких принципах вы должны подписаться. Иногда нам приходится делать выводы или придерживаться (иногда мы не можем добиться чего-то в этом роде).
Хм ... это напоминает мне ОС, которые я использую сейчас. До OS X Lion вы можете изменять размер только в правом нижнем углу окна. Это 28 + лет ожидания, прежде чем они, наконец, добавят возможность изменять размер в любом уголке окна на своей ОС.
Даже я очень люблю Mac OS, я бы не стал защищать свою позицию, прежде чем окно должно быть изменено только на одном углу. Ревность - это одно, а слепое следование - другое.
Так что это хорошо, что вы практикуете критическое мышление, а не слепо верить, что основной метод подписи Java является единственно правильный путь
отступлением, ожидая Mac иметь изменяемый размер края на любой угол сродни мне, ожидая, что Java будет иметь первоклассное свойство. Несмотря на название JSON (
Java Обозначение объекта сценария, хотя, конечно, Javascript не является Java), инициализатор объектов C# (через его инициализатор свойств и инициализатор коллекции) имеет больше сходства с JSON по сравнению с инициализатором объектов Java с JSON. Инициализатор объектов C# очень опрятен и очень похож на JSON.
C#
var p = new {
Lastname = "Lennon",
Firstname = "John",
PlacesBeen =
new[]
{
new { City = "Liverpool", Country = "England" },
new { City = "New York", Country = "US" },
new { City = "Tokyo", Country = "Japan" }
}
};
return Json(p);
Javascript:
var p = {
"Lastname" : "Lennon",
"Firstname" : "John",
"PlacesBeen" :
[
{ "City" : "Liverpool", "Country" : "England" },
{ "City" : "New York", "Country" : "US" },
{ "City" : "Tokyo", "Country" : "Japan" }
]
};
Следовательно, с первым классом собственностью С # (не втиснуть методу) и сбор инициализатором, а не только код становится кратким и аккуратно, теперь близко напоминают то, что большинство разработчиков используют сейчас для формата обмена данными, то есть JSON.
Синтаксис инициализатора объекта Java далек от стиля JSON. Я не буду защищать конструкторское решение Java (например, синтаксис/дизайн свойства) в этом отношении :-)
Таким образом, в том же духе, что я не буду защищать дизайнерское решение дизайнерского языка Java по синтаксису/дизайну синтаксиса Java, я буду не защищают public static void main(String[] args)
ツ
C наследование. Вы можете использовать 'main (String ... args)', чтобы вы могли называть 'main()', но это не ваш вопрос. –
Кстати, JAVA не является аббревиатурой. Они (Sun) назвали язык после кофе Java. Хотя некоторые люди модифицируют акроним на Java, например. Just Another Vague Акроним –
Он скомпилирует, но даст ошибку времени выполнения. – Pooja