That's right, I could make getIO() not abstract in the parent and override it only in LazyConnection class. Did you mean that? Do you agree with this change?