Is it possible autoload PHP classes in themes? Does the namespace, class name and naming convention work like it does for modules?

These links don't seem to mention it:


https://www.drupal.org/docs/develop/standards/psr-4-namespaces-and-autoloading-in-drupal-8
https://www.drupal.org/node/2349803
There's an interesting development going on regarding themes and OOP. Look at Allow themes to provide services.yml which finally got closed as Won't Fix. From Mark Carver's closing comment:


  I really don't think we should be opening up themes to services
  anymore.
  
  A lot has changed (for the better) in the 5 years I've been following
  this issue (closely).
  
  If this were to happen... there wouldn't be any real delineation
  between what a module is vs. what theme is, would there?


Instead as a result Allow themes to declare dependencies on modules is the route to go now. To move all the OOP stuff out of themes as the theme layer is for theming things, as JayPan said in the comments.

My answer to that problem is that I now always create a themename_companion module where I provide Drush 9 commands, helper functions, services etc. for my themes.