So how to you say Object B inheritcs from Object A and Object C inherits from Object B but a few things in Object C are different rather than simply extended...
Well that's hard to answer without at least an abstract example of how it's different. Different implies it just implements things in a different manner in which case you either want Abstract methods in Object A ( if Object A is never instantiated ) or you want overridden methods in Objects B and C, but that doesn't really explain wanting to skip somethiing, so that's probably not what you mean by different. Does it do less? Does it do more? What makes it different?
If it at least does everything that ObjectA does, then you could have it extend ObjectA and move everything which B and C both do up the hierarchy into Object A, and then make those new methods abstract so that Objects B and C have to implement them. This. of course, assumes that Object A is an abstract object which you never instantiate - which may or may not be the case.