# Class GeneratedMessageV3.FieldAccessorTable (3.19.4)

    public static final class GeneratedMessageV3.FieldAccessorTable

Users should ignore this class. This class provides the implementation
with access to the fields of a message object using Java reflection.

## Inheritance

[java.lang.Object](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html) \> GeneratedMessageV3.FieldAccessorTable

## Inherited Members

[Object.clone()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone--) [Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-) [Object.finalize()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize--) [Object.getClass()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--) [Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--) [Object.notify()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify--) [Object.notifyAll()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll--) [Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--) [Object.wait()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait--) [Object.wait(long)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-) [Object.wait(long,int)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-int-)

## Constructors

### FieldAccessorTable(Descriptors.Descriptor descriptor, String\[\] camelCaseNames)

    public FieldAccessorTable(Descriptors.Descriptor descriptor, String[] camelCaseNames)

Construct a FieldAccessorTable for a particular message class without
initializing FieldAccessors.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `descriptor` | `https://docs.cloud.google.com/java/docs/reference/protobuf/latest/com.google.protobuf.Descriptors.Descriptor` |
| `camelCaseNames` | `https://docs.oracle.com/javase/8/docs/api/java/lang/String.html[]` |

### FieldAccessorTable(Descriptors.Descriptor descriptor, String\[\] camelCaseNames, Class\<? extends GeneratedMessageV3\> messageClass, Class\<? extends GeneratedMessageV3.Builder\> builderClass)

    public FieldAccessorTable(Descriptors.Descriptor descriptor, String[] camelCaseNames, Class<? extends GeneratedMessageV3> messageClass, Class<? extends GeneratedMessageV3.Builder> builderClass)

Construct a FieldAccessorTable for a particular message class. Only
one FieldAccessorTable should ever be constructed per class.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `descriptor` | `https://docs.cloud.google.com/java/docs/reference/protobuf/latest/com.google.protobuf.Descriptors.Descriptor` The type's descriptor. |
| `camelCaseNames` | `https://docs.oracle.com/javase/8/docs/api/java/lang/String.html[]` The camelcase names of all fields in the message. These are used to derive the accessor method names. |
| `messageClass` | `https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html<? extends com.google.protobuf.GeneratedMessageV3>` The message type. |
| `builderClass` | `https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html<? extends com.google.protobuf.GeneratedMessageV3.Builder>` The builder type. |

## Methods

### ensureFieldAccessorsInitialized(Class\<? extends GeneratedMessageV3\> messageClass, Class\<? extends GeneratedMessageV3.Builder\> builderClass)

    public GeneratedMessageV3.FieldAccessorTable ensureFieldAccessorsInitialized(Class<? extends GeneratedMessageV3> messageClass, Class<? extends GeneratedMessageV3.Builder> builderClass)

Ensures the field accessors are initialized. This method is thread-safe.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `messageClass` | `https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html<? extends com.google.protobuf.GeneratedMessageV3>` The message type. |
| `builderClass` | `https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html<? extends com.google.protobuf.GeneratedMessageV3.Builder>` The builder type. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/java/docs/reference/protobuf/latest/com.google.protobuf.GeneratedMessageV3.FieldAccessorTable` | this |