I am not good at English.so I will use the translation of google.
– user50160Jan 24 '19 at 7:37

I made a contract as above.but If you look at the contract screen, the contract owner will not be displayed correctly at the owner's point. And somestate is not displayed even.
– user50160Jan 24 '19 at 7:42

Initially, your owner is 0x0000000.. because you have not instantiated it, but once you call owned from one of the accounts, you can see the result in owner variable is updated. And further you can only call changeOwner from the owner account. If you want it to be done from the very beginning, that is, as soon as the contract is deployed, you can use a constructor that way when you deploy your contract, the account used to deploy can be set as owner.