# Hierarchy For All Packages

Package Hierarchies:

- javax.servlet,
- javax.servlet.annotation,
- javax.servlet.descriptor,
- javax.servlet.http

## Class Hierarchy

- java.lang.Object
  - javax.servlet.AsyncEvent
  - javax.servlet.http.Cookie (implements java.lang.Cloneable, java.io.Serializable)
  - java.util.EventObject (implements java.io.Serializable)
    - javax.servlet.http.HttpSessionEvent
      - javax.servlet.http.HttpSessionBindingEvent
    - javax.servlet.ServletContextEvent
      - javax.servlet.ServletContextAttributeEvent
    - javax.servlet.ServletRequestEvent
      - javax.servlet.ServletRequestAttributeEvent
  - javax.servlet.GenericServlet (implements java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig)
    - javax.servlet.http.HttpServlet
  - javax.servlet.HttpConstraintElement
    - javax.servlet.HttpMethodConstraintElement
    - javax.servlet.ServletSecurityElement
  - javax.servlet.http.HttpUtils
  - java.io.InputStream (implements java.io.Closeable)
    - javax.servlet.ServletInputStream
  - javax.servlet.MultipartConfigElement
  - java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
    - javax.servlet.ServletOutputStream
  - javax.servlet.ServletRequestWrapper (implements javax.servlet.ServletRequest)
    - javax.servlet.http.HttpServletRequestWrapper (implements javax.servlet.http.HttpServletRequest)
  - javax.servlet.ServletResponseWrapper (implements javax.servlet.ServletResponse)
    - javax.servlet.http.HttpServletResponseWrapper (implements javax.servlet.http.HttpServletResponse)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - javax.servlet.ServletException
        - javax.servlet.UnavailableException

## Interface Hierarchy

- javax.servlet.AsyncContext
- java.lang.AutoCloseable
  - javax.servlet.http.WebConnection
- java.util.EventListener
  - javax.servlet.AsyncListener
  - javax.servlet.http.HttpSessionActivationListener
  - javax.servlet.http.HttpSessionAttributeListener
  - javax.servlet.http.HttpSessionBindingListener
  - javax.servlet.http.HttpSessionIdListener
  - javax.servlet.http.HttpSessionListener
  - javax.servlet.ReadListener
  - javax.servlet.ServletContextAttributeListener
  - javax.servlet.ServletContextListener
  - javax.servlet.ServletRequestAttributeListener
  - javax.servlet.ServletRequestListener
  - javax.servlet.WriteListener
- javax.servlet.Filter
- javax.servlet.FilterChain
- javax.servlet.FilterConfig
- javax.servlet.http.HttpSession
- javax.servlet.http.HttpSessionContext
- javax.servlet.http.HttpUpgradeHandler
- javax.servlet.descriptor.JspConfigDescriptor
- javax.servlet.descriptor.JspPropertyGroupDescriptor
- javax.servlet.http.Part
- javax.servlet.Registration
  - javax.servlet.FilterRegistration
    - javax.servlet.FilterRegistration.Dynamic (also extends javax.servlet.Registration.Dynamic)
  - javax.servlet.Registration.Dynamic
    - javax.servlet.FilterRegistration.Dynamic (also extends javax.servlet.FilterRegistration)
    - javax.servlet.ServletRegistration.Dynamic (also extends javax.servlet.ServletRegistration)
  - javax.servlet.ServletRegistration
    - javax.servlet.ServletRegistration.Dynamic (also extends javax.servlet.Registration.Dynamic)
- javax.servlet.RequestDispatcher
- javax.servlet.Servlet
- javax.servlet.ServletConfig
- javax.servlet.ServletContainerInitializer
- javax.servlet.ServletContext
- javax.servlet.ServletRequest
  - javax.servlet.http.HttpServletRequest
- javax.servlet.ServletResponse
  - javax.servlet.http.HttpServletResponse
- javax.servlet.SessionCookieConfig
- javax.servlet.SingleThreadModel
- javax.servlet.descriptor.TaglibDescriptor

## Annotation Type Hierarchy

- javax.servlet.annotation.HandlesTypes (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.HttpConstraint (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.HttpMethodConstraint (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.MultipartConfig (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.ServletSecurity (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.WebFilter (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.WebInitParam (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.WebListener (implements java.lang.annotation.Annotation)
- javax.servlet.annotation.WebServlet (implements java.lang.annotation.Annotation)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - javax.servlet.DispatcherType
    - javax.servlet.annotation.ServletSecurity.EmptyRoleSemantic
    - javax.servlet.annotation.ServletSecurity.TransportGuarantee
    - javax.servlet.SessionTrackingMode