APIdia Launch Partner
Top Description Fields Constructors Methods
jdk.internal.util

public final Enum OperatingSystem

extends Enum<OperatingSystem>
Class Inheritance
Imports
java.util.Locale, jdk.internal.util.PlatformProps, jdk.internal.vm.annotation.ForceInline

Enumeration of operating system types and testing for the current OS. The enumeration can be used to dispatch to OS specific code or values. Checking if a specific operating system is current uses a simple static method for each operating system.

For example,

if (OperatingSystem.isWindows()) { // Windows only code. } else if (OperatingSystem.isLinux()) { // Linux only code }
if (OperatingSystem.isWindows()) {
    // Windows only code.
} else if (OperatingSystem.isLinux()) {
    // Linux only code
}
Alternatively, compare with the current operating system. For example,
if (OperatingSystem.current() == OperatingSystem.WINDOWS) { // Windows only code. }
if (OperatingSystem.current() == OperatingSystem.WINDOWS) {
    // Windows only code.
}
Dispatch based on the current operating system or choose a value. For example,
int port() { return switch(OperatingSystem.current()) { case LINUX->32768; case AIX->32768; case MACOS->49152; case WINDOWS->49152; }; }
int port() {
     return switch(OperatingSystem.current()) {
         case LINUX->32768;
         case AIX->32768;
         case MACOS->49152;
         case WINDOWS->49152;
     };
}

Field Summary

Modifier and TypeField and Description
public static final OperatingSystem
AIX

The AIX Operating system.

private static final OperatingSystem
public static final OperatingSystem
LINUX

Operating systems based on the Linux kernel.

public static final OperatingSystem
MACOS

The Mac OS X Operating system.

public static final OperatingSystem
WINDOWS

The Windows Operating system.

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static OperatingSystem

Returns:

the current operating system
current
()

Returns the current operating system.

private static OperatingSystem
initOS()

Returns the OperatingSystem of the build.

public static boolean

Returns:

true if built for the AIX operating system
isAix
()

Returns true if built for the AIX operating system.

public static boolean

Returns:

true if built for the Linux operating system
isLinux
()

Returns true if built for the Linux operating system.

public static boolean

Returns:

true if built for the Mac OS X operating system
isMacOS
()

Returns true if built for the Mac OS X operating system.

public static boolean

Returns:

true if built for the Windows operating system
isWindows
()

Returns true if built for the Windows operating system.

public static OperatingSystem
public static OperatingSystem[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

AIXback to summary
public static final OperatingSystem AIX

The AIX Operating system.

CURRENT_OSback to summary
private static final OperatingSystem CURRENT_OS
LINUXback to summary
public static final OperatingSystem LINUX

Operating systems based on the Linux kernel.

MACOSback to summary
public static final OperatingSystem MACOS

The Mac OS X Operating system.

WINDOWSback to summary
public static final OperatingSystem WINDOWS

The Windows Operating system.

Constructor Detail

OperatingSystemback to summary
private OperatingSystem()

Method Detail

currentback to summary
public static OperatingSystem current()

Returns the current operating system.

Returns:OperatingSystem

the current operating system

initOSback to summary
private static OperatingSystem initOS()

Returns the OperatingSystem of the build. Build time names are mapped to respective uppercase enum values. Names not recognized throw ExceptionInInitializerError with IllegalArgumentException.

isAixback to summary
public static boolean isAix()

Returns true if built for the AIX operating system.

Returns:boolean

true if built for the AIX operating system

Annotations
@ForceInline
isLinuxback to summary
public static boolean isLinux()

Returns true if built for the Linux operating system.

Returns:boolean

true if built for the Linux operating system

Annotations
@ForceInline
isMacOSback to summary
public static boolean isMacOS()

Returns true if built for the Mac OS X operating system.

Returns:boolean

true if built for the Mac OS X operating system

Annotations
@ForceInline
isWindowsback to summary
public static boolean isWindows()

Returns true if built for the Windows operating system.

Returns:boolean

true if built for the Windows operating system

Annotations
@ForceInline
valueOfback to summary
public static OperatingSystem valueOf(String name)
valuesback to summary
public static OperatingSystem[] values()