Implicit conversion methods (cont'd)
If the compiler expects an abstract data type, and you provide a different data type, (primitive or abstract), the compiler does not know how to deal with that.
If the compiler expects a primitive data type, and you provide an abstract data type, the compiler does not know what to do.
Unless you have provided implicit conversion methods, the compiler issues an error message and refuses to compile the program.
You can add implicit conversion methods to a class so that the compiler knows how to convert from one data type to another.