What is the cleanest way of 'editing' vanilla classes?
As for more detail to my current predicament:
I decided to add vertical slabs to my mod so I wrote a new block template (ComplexSlabBlock) as well as a class for the required blockstates. Most slabs I register with my mod I add with "... Block EXAMPLE_SLAB = register(new ComplexSlabBlock(...))". This method works for new slabs but I can't find a way to make slabs that are already in the game use this template.
Simply changing the line "... Block COBBLESTONE_SLAB = register("cobblestone_slab", new SlabBlock(...))" would do the trick. (I don't care about mod compatibility for now)
I did some research and found that one way of overwriting classes is "reloading" but from what I've read so far it sounds fairly advanced and easy to mess up so I want to stay away from that as much as possible.