Inappropriate Intimacy occurs when two classes are tightly linked to one another.
This is an indication that the classes should be merged, that some functionality belongs in a superclass of both original classes, or that the functionality belongs in an unrelated class.
Inappropriate Intimacy is a class overly reliant on another class. For a method overly reliant on a class, check out Feature Envy.
Books about code smells
Learn to write better smelling code.
Refactoring: Improving the Design of Existing Code
Code smells: A Predictor of Remarkable Quality Improvement
Clean Code: A Handbook of Agile Software Craftsmanship