Я всегда считал меня минималистским языком - я думаю, что поскольку дословные строки не являются необходимостью (например, свойства), они не были включены.
Например, в C # есть много быстрых способов сделать что-то вроде свойств:
public int Foo { get; set; }
и дословные строки:
String bar = @"some
string";
Java стремится избегать как можно большего количества синтаксического сахара. Если вы хотите получить и установить методы для поля, вы должны сделать следующее:
private int foo;
public int getFoo() { return this.foo; }
public int setFoo(int foo) { this.foo = foo; }
и строки должны быть экранированы:
String bar = "some\nstring";
Я думаю, это потому, что во многих отношениях C # и Java имеют разные цели проектирования. C # быстро развивается, и многие функции постоянно добавляются, но большинство из них, как правило, являются синтаксическим сахаром. Java с другой стороны - это простота и легкость понимания. Во многом причиной того, что Java была создана, были реакции на сложность синтаксиса C ++.