The short answer is, yes it is safe.
Before any other components in your application startup, the application class is loaded and onCreate()
is invoked, so in every component of your application (Activity, Service, Database, etc) you are guaranteed to have an instance.
The other type of safety in terms of a memory leak is also fine consdering you are using this static throughout your app. The only thing to keep in mind is that the static will be in memory as long as the application process is running.