As he said, because the item is being used as an RF container, and it's supposed to do different things depending on whether it's in the player's inventory or in a tile entity's inventory (I assume if it's in a tile entity, it charges that entity up, but if it's in a player's inventory, it instead charges the items in his inventory; that's the usual battery design).
ItemStacks have NBT data stored in their stackTagCompound member. One thing you could do is override the useItemRightClick() method; whenever a player right-clicks the item, it "activates" it, which in reality just stores that player's UUID in the NBT tags for later use.
As for clearing that tag when the item is put into a TileEntity's inventory...I'm not sure about that. If they were all your own tile entities, you could just make a custom slot class that extends slot but overrides the putStack() method to clear the tag. But since they're likely other people's containers...I'm not sure where to go from there.
Actually, I'm making a "raw" version of the capacitor (because the final one is OP) and I want the raw one to need to be charged to finish it, like it's being "infused" with RF. Think Draconic Evolution's charged draconium blocks. But I want to require that the player do this in a block, instead of having (for example) an EnderIO wireless charge in their house that crafts it in their inventory. If I can't do that, I guess I could just up the power required to craft it or something.
Also I'm not a he.