---
title: componentClass
framework: gameplaykit
role: symbol
role_heading: Instance Property
path: gameplaykit/gkcomponentsystem/componentclass
---

# componentClass

The class of components managed by the component system.

## Declaration

```swift
var componentClass: AnyClass { get }
```

## Discussion

Discussion Each GKComponentSystem object manages components of a specific GKComponent subclass. You specify the component class to be used by a system when creating it with the init(componentClass:) initializer. Afterward, you may add components to the system only if their type matches the system’s component class.

## See Also

### Managing a List of Components

- [components](gameplaykit/gkcomponentsystem/components.md)
- [addComponent(_:)](gameplaykit/gkcomponentsystem/addcomponent(_:).md)
- [addComponent(foundIn:)](gameplaykit/gkcomponentsystem/addcomponent(foundin:).md)
- [removeComponent(_:)](gameplaykit/gkcomponentsystem/removecomponent(_:).md)
- [removeComponent(foundIn:)](gameplaykit/gkcomponentsystem/removecomponent(foundin:).md)
