public abstract class java.security.cert.X509Certificate extends java.security.cert.Certificate implements java.security.cert.X509Extension
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: java.security.cert.X509Certificate
  super_class: java.security.cert.Certificate
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -2491127588187038216

  private transient javax.security.auth.x500.X500Principal subjectX500Principal;
    descriptor: Ljavax/security/auth/x500/X500Principal;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient javax.security.auth.x500.X500Principal issuerX500Principal;
    descriptor: Ljavax/security/auth/x500/X500Principal;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.security.cert.X509Certificate this
         0: .line 123
            aload 0 /* this */
            ldc "X.509"
            invokespecial java.security.cert.Certificate.<init>:(Ljava/lang/String;)V
         1: .line 124
            return
        end local 0 // java.security.cert.X509Certificate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/security/cert/X509Certificate;

  public abstract void checkValidity();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.security.cert.CertificateExpiredException, java.security.cert.CertificateNotYetValidException

  public abstract void checkValidity(java.util.Date);
    descriptor: (Ljava/util/Date;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.security.cert.CertificateExpiredException, java.security.cert.CertificateNotYetValidException
    MethodParameters:
      Name  Flags
      date  

  public abstract int getVersion();
    descriptor: ()I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.math.BigInteger getSerialNumber();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.security.Principal getIssuerDN();
    descriptor: ()Ljava/security/Principal;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public javax.security.auth.x500.X500Principal getIssuerX500Principal();
    descriptor: ()Ljavax/security/auth/x500/X500Principal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.security.cert.X509Certificate this
         0: .line 251
            aload 0 /* this */
            getfield java.security.cert.X509Certificate.issuerX500Principal:Ljavax/security/auth/x500/X500Principal;
            ifnonnull 2
         1: .line 252
            aload 0 /* this */
            aload 0 /* this */
            invokestatic sun.security.x509.X509CertImpl.getIssuerX500Principal:(Ljava/security/cert/X509Certificate;)Ljavax/security/auth/x500/X500Principal;
            putfield java.security.cert.X509Certificate.issuerX500Principal:Ljavax/security/auth/x500/X500Principal;
         2: .line 254
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.security.cert.X509Certificate.issuerX500Principal:Ljavax/security/auth/x500/X500Principal;
            areturn
        end local 0 // java.security.cert.X509Certificate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/security/cert/X509Certificate;

  public abstract java.security.Principal getSubjectDN();
    descriptor: ()Ljava/security/Principal;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public javax.security.auth.x500.X500Principal getSubjectX500Principal();
    descriptor: ()Ljavax/security/auth/x500/X500Principal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.security.cert.X509Certificate this
         0: .line 294
            aload 0 /* this */
            getfield java.security.cert.X509Certificate.subjectX500Principal:Ljavax/security/auth/x500/X500Principal;
            ifnonnull 2
         1: .line 295
            aload 0 /* this */
            aload 0 /* this */
            invokestatic sun.security.x509.X509CertImpl.getSubjectX500Principal:(Ljava/security/cert/X509Certificate;)Ljavax/security/auth/x500/X500Principal;
            putfield java.security.cert.X509Certificate.subjectX500Principal:Ljavax/security/auth/x500/X500Principal;
         2: .line 297
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.security.cert.X509Certificate.subjectX500Principal:Ljavax/security/auth/x500/X500Principal;
            areturn
        end local 0 // java.security.cert.X509Certificate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/security/cert/X509Certificate;

  public abstract java.util.Date getNotBefore();
    descriptor: ()Ljava/util/Date;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.util.Date getNotAfter();
    descriptor: ()Ljava/util/Date;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract byte[] getTBSCertificate();
    descriptor: ()[B
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.security.cert.CertificateEncodingException

  public abstract byte[] getSignature();
    descriptor: ()[B
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.lang.String getSigAlgName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.lang.String getSigAlgOID();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract byte[] getSigAlgParams();
    descriptor: ()[B
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean[] getIssuerUniqueID();
    descriptor: ()[Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean[] getSubjectUniqueID();
    descriptor: ()[Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean[] getKeyUsage();
    descriptor: ()[Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.util.List<java.lang.String> getExtendedKeyUsage();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.security.cert.X509Certificate this
         0: .line 508
            aload 0 /* this */
            invokestatic sun.security.x509.X509CertImpl.getExtendedKeyUsage:(Ljava/security/cert/X509Certificate;)Ljava/util/List;
            areturn
        end local 0 // java.security.cert.X509Certificate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/security/cert/X509Certificate;
    Exceptions:
      throws java.security.cert.CertificateParsingException
    Signature: ()Ljava/util/List<Ljava/lang/String;>;

  public abstract int getBasicConstraints();
    descriptor: ()I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.util.Collection<java.util.List<?>> getSubjectAlternativeNames();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.security.cert.X509Certificate this
         0: .line 605
            aload 0 /* this */
            invokestatic sun.security.x509.X509CertImpl.getSubjectAlternativeNames:(Ljava/security/cert/X509Certificate;)Ljava/util/Collection;
            areturn
        end local 0 // java.security.cert.X509Certificate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/security/cert/X509Certificate;
    Exceptions:
      throws java.security.cert.CertificateParsingException
    Signature: ()Ljava/util/Collection<Ljava/util/List<*>;>;

  public java.util.Collection<java.util.List<?>> getIssuerAlternativeNames();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.security.cert.X509Certificate this
         0: .line 647
            aload 0 /* this */
            invokestatic sun.security.x509.X509CertImpl.getIssuerAlternativeNames:(Ljava/security/cert/X509Certificate;)Ljava/util/Collection;
            areturn
        end local 0 // java.security.cert.X509Certificate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/security/cert/X509Certificate;
    Exceptions:
      throws java.security.cert.CertificateParsingException
    Signature: ()Ljava/util/Collection<Ljava/util/List<*>;>;
}
SourceFile: "X509Certificate.java"