Let's take a simple example. A property "available" has a boolean type and its no more sufficient for the exemple use, so you change its type to int.
boolean m_bAvailable => int m_bAvailable
In parallel, you must rename it.
int m_bAvailable => int m_nAvailable
The type has changed, you must change the accessors.
void setAvailable(boolean p_bAvailable) => void setAvailable(int p_nAvailable) boolean isAvailable() => int getAvailable()
And then change the calling code, that is change the variable types and names where applicable. The complexity of this refactoring is almost doubled compared with the one without hungarian notation. So we need style checker which can handle this (I wonder if Checkstyle does it?). By the way, there is a little problem now, "getAvailable" doesn't sound right at all, it should be "getAvailability", *sig*.