Sorry this questions a little long, but I'll explain it as efficiently as I can

So lets say you have a fruit class, and apple and orange are both classes that inherit from fruit.

And say I'm making a game where armies are battling using fruits and fruit weapons.

So now I want to make an abstract FruitCanon class, that will use and shoot one kind of fruit, so I use a generic class.

public...