I don't understand why my wallet ERC-20 stolen by a hacker
I'm guessing you use MyEtherWallet? You can run it offline to avoid being compromised in the future. They have guides for keeping an offline copy and creating and signing offline transactions (which later need to be broadcasted online):
How to run MEW offlineHow to make offline MEW transactions
It's inconvenient, but definitely a lot safer.
Many beginners, with participation in different hands, filling out the form do not spread the wallet address, and the private key. I think basically the loss of funds in the wallets occur due to the fault of the owner of the wallet, the reasons may be different.