Java System.out.println是否有不必使用System的替代方案?

Java System.out.println是否有不必使用System的替代方案?,java,eclipse,system.out,Java,Eclipse,System.out,我目前必须创建一个名为“System”的类 我不能把System.out.println放进去,因为系统总是引用类。 如何避免这种情况?您可以: 使用完全限定名java.lang.System 或 静态导入java.lang.System.out并使用out.println: 或 将类重命名为其他对象,而不是系统。当然,你可以找到一个更好、更具体的名字。例如,如果您正在制作一个游戏,请将其称为GameSystem。无论您正在制作什么,请尝试将其附加到系统中以制作XXXSystem 您可以: 使用

我目前必须创建一个名为“System”的类 我不能把System.out.println放进去,因为系统总是引用类。 如何避免这种情况?

您可以:

使用完全限定名java.lang.System

静态导入java.lang.System.out并使用out.println:

将类重命名为其他对象,而不是系统。当然,你可以找到一个更好、更具体的名字。例如,如果您正在制作一个游戏,请将其称为GameSystem。无论您正在制作什么,请尝试将其附加到系统中以制作XXXSystem

您可以:

使用完全限定名java.lang.System

静态导入java.lang.System.out并使用out.println:

将类重命名为其他对象,而不是系统。当然,你可以找到一个更好、更具体的名字。例如,如果您正在制作一个游戏,请将其称为GameSystem。无论您正在制作什么,请尝试将其附加到系统中以制作XXXSystem


为完整起见,下面介绍如何创建自己的System.out版本,而无需使用System类:

PrintStream out = new PrintStream(new FileOutputStream(FileDescriptor.out), true);

您应该首先探索其他答案中给出的选项,例如使用完全限定的类名java.lang.System或重命名您的系统类

为了完整性,以下是您如何创建自己的System.out版本,而根本不使用System类:

PrintStream out = new PrintStream(new FileOutputStream(FileDescriptor.out), true);

您应该首先探索其他答案中给出的选项,例如使用完全限定的类名java.lang.System或重命名您的系统类

如果您使用的是Maven,请在pom.xml中添加以下依赖项:

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
现在,您可以将@Slf4j注释添加到类中,并使用log.infoMy message


有几个级别的日志记录。阅读有关注释的更多信息

如果您使用的是Maven,请在pom.xml中添加以下依赖项:

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
现在,您可以将@Slf4j注释添加到类中,并使用log.infoMy message


有几个级别的日志记录。阅读有关注释的更多信息

我建议不要这样命名您的类,因为java中已经有一个名为System的类。 或者,您可以添加静态导入或使用Java类的完全限定名

静态导入 导入静态java.lang.System*


但是静态导入也可能有歧义,所以我建议您将类从System重命名为其他名称,与您的项目有点相关。

我建议不要这样命名您的类,因为在java中我们已经有一个名为System的类。 或者,您可以添加静态导入或使用Java类的完全限定名

静态导入 导入静态java.lang.System*


但是静态导入也可能有歧义,因此我建议您将类从System重命名为其他名称,与您的项目有点相关。

使用完全限定的名称。java.lang.System.out.println。更好的是,当已经有一个类被称为默认情况下隐式属于每个命名空间的类时,不要调用类系统。请使用完全限定名。java.lang.System.out.println。更好的是,当已经有一个名为的类默认情况下隐式属于每个命名空间时,不要调用类系统。第二个选项需要注意:如果需要使用系统中的其他对象或方法,第二个选项需要注意的是:如果您需要使用系统中的其他对象或方法,则不应使用该选项。