Where is the best place to save Locators when building Automation Framework?

Let’s discuss this together. If you see it, we can save it in: class page, properties file or json file.
And when you choose it, why do you choose it and what advantages does it have over the others??

Saving it directly in the class makes it easier to access. As for external storage, it takes extra reading from the library to get the data out.