This extension is used to define a property, it has nothing to do with your implementation of the class, it is just a name, used in the extension point like org.eclipse.cdt.managedbuilder.core.buildDefinitions.
Take a look at its English explanation.
The build properties extension point was used to specify, the property types, and their values to being used with the tool Defin Itions. The primary use if the build properties for now option anablement/adjustment expressions.
Above is originally, but how to read all feel behind those words is very not smooth.
The primary use if the build properties for now option anablement/adjustment expressions.
This sentence, I think, should be the primary use of the build properties for now option enablement/adjustment expressions.
This means that the most basic (and most important) use of it now is to make certain expressions valid (or to adjust the values of some expressions).
This is true, when you define a toolchain (toolchain), you may need to specify which types of output files are supported by this toolchain, and if you compile an elf format type and compile an EXE format type toolchain, it will be different. This time the newly defined org.eclipse.cdt.managedbuilder.core.Property comes in handy, and at the same time, the Buildartefacttype in ProjectType uses the same property.