Given that your proposed logic would typically look something like this...
public static Texture requestTexture(TextureType type)
return new Texture(); //class type used to create object
return new Texture(32,32); //class type ...
Public or private doesn't matter to cheaters.
Access control modifiers like that are just a fiction, a polite agreement between coders and the IDE to pretend that private members are inaccessible, to make the program easier to reason about.
It's trivial to work around them as a coder if you want to do so, and for hackers they're all just bytes in memory, ...