# Constructor

Declare a constructor, usually for a class or enum If no name is provided, will try take name from class or enum declaration

* jsx

  ```tsx
  import { Constructor } from "@alloy-js/java";


  <Constructor
    abstract
    default
    final
    name="string"
    native
    parameters={Record<string, Children>}
    private
    protected
    public
    static
    strictfp
    synchronized
    transient
    volatile
  >
    {children}
  </Constructor>
  ```

* stc

  ```ts
  import { Constructor } from "@alloy-js/java/stc";


  Constructor({
    abstract: boolean,
    default: boolean,
    final: boolean,
    name: string,
    native: boolean,
    parameters: Record<string, Children>,
    private: boolean,
    protected: boolean,
    public: boolean,
    static: boolean,
    strictfp: boolean,
    synchronized: boolean,
    transient: boolean,
    volatile: boolean,
  }).children(children)
  ```

## Props

|              |                                                                     |   |
| ------------ | ------------------------------------------------------------------- | - |
| abstract     | optional boolean                                                    |   |
| children     | optional [Children](../../../core/types/children/)                  |   |
| default      | optional boolean                                                    |   |
| final        | optional boolean                                                    |   |
| name         | optional string                                                     |   |
| native       | optional boolean                                                    |   |
| parameters   | optional Record\<string, [Children](../../../core/types/children/)> |   |
| private      | optional boolean                                                    |   |
| protected    | optional boolean                                                    |   |
| public       | optional boolean                                                    |   |
| static       | optional boolean                                                    |   |
| strictfp     | optional boolean                                                    |   |
| synchronized | optional boolean                                                    |   |
| transient    | optional boolean                                                    |   |
| volatile     | optional boolean                                                    |   |
