public class sun.awt.OSInfo
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.awt.OSInfo
super_class: java.lang.Object
{
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_UNKNOWN;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_95;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_98;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_ME;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_2000;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_XP;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_2003;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_VISTA;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final sun.awt.OSInfo$WindowsVersion WINDOWS_7;
descriptor: Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final java.lang.String OS_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "os.name"
private static final java.lang.String OS_VERSION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "os.version"
private static final java.util.Map<java.lang.String, sun.awt.OSInfo$WindowsVersion> windowsVersionMap;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Lsun/awt/OSInfo$WindowsVersion;>;
private static final java.security.PrivilegedAction<sun.awt.OSInfo$OSType> osTypeAction;
descriptor: Ljava/security/PrivilegedAction;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/security/PrivilegedAction<Lsun/awt/OSInfo$OSType;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new sun.awt.OSInfo$WindowsVersion
dup
iconst_m1
iconst_m1
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_UNKNOWN:Lsun/awt/OSInfo$WindowsVersion;
1: new sun.awt.OSInfo$WindowsVersion
dup
iconst_4
iconst_0
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_95:Lsun/awt/OSInfo$WindowsVersion;
2: new sun.awt.OSInfo$WindowsVersion
dup
iconst_4
bipush 10
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_98:Lsun/awt/OSInfo$WindowsVersion;
3: new sun.awt.OSInfo$WindowsVersion
dup
iconst_4
bipush 90
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_ME:Lsun/awt/OSInfo$WindowsVersion;
4: new sun.awt.OSInfo$WindowsVersion
dup
iconst_5
iconst_0
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_2000:Lsun/awt/OSInfo$WindowsVersion;
5: new sun.awt.OSInfo$WindowsVersion
dup
iconst_5
iconst_1
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_XP:Lsun/awt/OSInfo$WindowsVersion;
6: new sun.awt.OSInfo$WindowsVersion
dup
iconst_5
iconst_2
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_2003:Lsun/awt/OSInfo$WindowsVersion;
7: new sun.awt.OSInfo$WindowsVersion
dup
bipush 6
iconst_0
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_VISTA:Lsun/awt/OSInfo$WindowsVersion;
8: new sun.awt.OSInfo$WindowsVersion
dup
bipush 6
iconst_1
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
putstatic sun.awt.OSInfo.WINDOWS_7:Lsun/awt/OSInfo$WindowsVersion;
9: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
10: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_95:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_95:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
11: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_98:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_98:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
12: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_ME:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_ME:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
13: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_2000:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_2000:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_XP:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_XP:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
15: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_2003:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_2003:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
16: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_VISTA:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_VISTA:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
17: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
getstatic sun.awt.OSInfo.WINDOWS_7:Lsun/awt/OSInfo$WindowsVersion;
invokevirtual sun.awt.OSInfo$WindowsVersion.toString:()Ljava/lang/String;
getstatic sun.awt.OSInfo.WINDOWS_7:Lsun/awt/OSInfo$WindowsVersion;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
18: new sun.awt.OSInfo$1
dup
invokespecial sun.awt.OSInfo$1.<init>:()V
putstatic sun.awt.OSInfo.osTypeAction:Ljava/security/PrivilegedAction;
19: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/awt/OSInfo;
public static sun.awt.OSInfo$OSType getOSType();
descriptor: ()Lsun/awt/OSInfo$OSType;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: ldc "os.name"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
start local 0 1: aload 0
ifnull 10
2: aload 0
ldc "Windows"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 4
3: getstatic sun.awt.OSInfo$OSType.WINDOWS:Lsun/awt/OSInfo$OSType;
areturn
4: StackMap locals: java.lang.String
StackMap stack:
aload 0
ldc "Linux"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 6
5: getstatic sun.awt.OSInfo$OSType.LINUX:Lsun/awt/OSInfo$OSType;
areturn
6: StackMap locals:
StackMap stack:
aload 0
ldc "OS X"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 8
7: getstatic sun.awt.OSInfo$OSType.MACOSX:Lsun/awt/OSInfo$OSType;
areturn
8: StackMap locals:
StackMap stack:
aload 0
ldc "AIX"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 10
9: getstatic sun.awt.OSInfo$OSType.AIX:Lsun/awt/OSInfo$OSType;
areturn
10: StackMap locals:
StackMap stack:
getstatic sun.awt.OSInfo$OSType.UNKNOWN:Lsun/awt/OSInfo$OSType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 11 0 osName Ljava/lang/String;
Exceptions:
throws java.lang.SecurityException
public static java.security.PrivilegedAction<sun.awt.OSInfo$OSType> getOSTypeAction();
descriptor: ()Ljava/security/PrivilegedAction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.awt.OSInfo.osTypeAction:Ljava/security/PrivilegedAction;
areturn
LocalVariableTable:
Start End Slot Name Signature
Signature: ()Ljava/security/PrivilegedAction<Lsun/awt/OSInfo$OSType;>;
public static sun.awt.OSInfo$WindowsVersion getWindowsVersion();
descriptor: ()Lsun/awt/OSInfo$WindowsVersion;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=0
0: ldc "os.version"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
start local 0 1: aload 0
ifnonnull 3
2: getstatic sun.awt.OSInfo.WINDOWS_UNKNOWN:Lsun/awt/OSInfo$WindowsVersion;
areturn
3: StackMap locals: java.lang.String
StackMap stack:
getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
dup
astore 1
monitorenter
4: getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.awt.OSInfo$WindowsVersion
astore 2
start local 2 5: aload 2
ifnonnull 16
6: aload 0
ldc "\\."
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 3
start local 3 7: aload 3
arraylength
iconst_2
if_icmpne 13
8: new sun.awt.OSInfo$WindowsVersion
dup
aload 3
iconst_0
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
aload 3
iconst_1
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
invokespecial sun.awt.OSInfo$WindowsVersion.<init>:(II)V
astore 2
9: goto 15
StackMap locals: java.lang.String java.util.Map sun.awt.OSInfo$WindowsVersion java.lang.String[]
StackMap stack: java.lang.NumberFormatException
10: pop
11: getstatic sun.awt.OSInfo.WINDOWS_UNKNOWN:Lsun/awt/OSInfo$WindowsVersion;
aload 1
monitorexit
12: areturn
13: StackMap locals:
StackMap stack:
getstatic sun.awt.OSInfo.WINDOWS_UNKNOWN:Lsun/awt/OSInfo$WindowsVersion;
aload 1
monitorexit
14: areturn
15: StackMap locals:
StackMap stack:
getstatic sun.awt.OSInfo.windowsVersionMap:Ljava/util/Map;
aload 0
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 16: StackMap locals:
StackMap stack:
aload 2
aload 1
monitorexit
17: areturn
end local 2 18: StackMap locals: java.lang.String java.util.Map
StackMap stack: java.lang.Throwable
aload 1
monitorexit
19: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 20 0 osVersion Ljava/lang/String;
5 18 2 result Lsun/awt/OSInfo$WindowsVersion;
7 16 3 arr [Ljava/lang/String;
Exception table:
from to target type
8 9 10 Class java.lang.NumberFormatException
4 12 18 any
13 14 18 any
15 17 18 any
18 19 18 any
Exceptions:
throws java.lang.SecurityException
}
SourceFile: "OSInfo.java"
NestMembers:
sun.awt.OSInfo$1 sun.awt.OSInfo$OSType sun.awt.OSInfo$WindowsVersion
InnerClasses:
sun.awt.OSInfo$1
public final OSType = sun.awt.OSInfo$OSType of sun.awt.OSInfo
public WindowsVersion = sun.awt.OSInfo$WindowsVersion of sun.awt.OSInfo