Can numerical discrete finite data be always treated also as categorical?
I would separate value with representation in this case.

Energy as you mentioned, in the real world, holds a very continuous value.  However, we may choose (for various reasons) to represent this value in different forms. 

We can take values as they are (15.21252, 23.76535), we can round them into integers (15, 24), we can even decide to represent this data by clusters ("UNDER 20", "OVER 20"). 

Technically, all data can be represented as categorical data, we need to consider what value does this data represent, and what are we losing/gaining from using different representations.