diff --git a/src/java.base/share/classes/java/io/Console.java b/src/java.base/share/classes/java/io/Console.java index a4699406867..29bd42d2166 100644 --- a/src/java.base/share/classes/java/io/Console.java +++ b/src/java.base/share/classes/java/io/Console.java @@ -224,7 +224,7 @@ public Console print(@Nullable Object obj) { * @since 23 */ @PreviewFeature(feature = PreviewFeature.Feature.IMPLICIT_CLASSES) - public String readln(@Nullable String prompt) { + public @Nullable String readln(@Nullable String prompt) { throw newUnsupportedOperationException(); } @@ -242,7 +242,7 @@ public String readln(@Nullable String prompt) { * @since 24 */ @PreviewFeature(feature = PreviewFeature.Feature.IMPLICIT_CLASSES) - public String readln() { + public @Nullable String readln() { throw newUnsupportedOperationException(); } diff --git a/src/java.base/share/classes/java/io/IO.java b/src/java.base/share/classes/java/io/IO.java index a49a51041fc..268d67bcda2 100644 --- a/src/java.base/share/classes/java/io/IO.java +++ b/src/java.base/share/classes/java/io/IO.java @@ -26,6 +26,8 @@ package java.io; import jdk.internal.javac.PreviewFeature; +import org.jspecify.annotations.NullMarked; +import org.jspecify.annotations.Nullable; /** * A collection of static convenience methods that provide access to @@ -41,6 +43,7 @@ * @since 23 */ @PreviewFeature(feature = PreviewFeature.Feature.IMPLICIT_CLASSES) +@NullMarked public final class IO { private IO() { @@ -59,7 +62,7 @@ private IO() { * @throws IOError if {@code System.console()} returns {@code null}, * or if an I/O error occurs */ - public static void println(Object obj) { + public static void println(@Nullable Object obj) { con().println(obj); } @@ -90,7 +93,7 @@ public static void println() { * @throws IOError if {@code System.console()} returns {@code null}, * or if an I/O error occurs */ - public static void print(Object obj) { + public static void print(@Nullable Object obj) { con().print(obj); } @@ -110,7 +113,7 @@ public static void print(Object obj) { * @throws IOError if {@code System.console()} returns {@code null}, * or if an I/O error occurs */ - public static String readln(String prompt) { + public static @Nullable String readln(@Nullable String prompt) { return con().readln(prompt); } @@ -128,7 +131,7 @@ public static String readln(String prompt) { * or if an I/O error occurs * @since 24 */ - public static String readln() { + public static @Nullable String readln() { return con().readln(); }