@voddan: yeah, for the compiler they are all nullable in theory, but for the people that actually code the libraries, only a few types are nullable in practice. Requiring to annotate the complementary set not only is a lot more of work... but it's pretty useless as the compiler/checker does not know whether something without annotation is actually nullable or just not annotated (like most of existing Java code)