So if I have the private key then would I be able to see the actual balance and would be able to spend using Electrum? I guess I would?
No, it doesn't have to do with that.
When you query a command to an electrum server, whether if you're using a watch-only wallet or not, you're sending the
address, not the public key. Electrum nodes fetch the transactions related to that script hash and
only those. If you search Hal's address' script hash among all those transactions you'll see that it has received 0.0159762. But if along with the hash, you search the public key you'll see that it's 50.0159762.
A better picture of the subject. Nowdays, when you sign a transaction and broadcast it, you're locking your funds to a 160-bit hash.
Example:
403556352dc1060df7abc73a7ecfbaeedf99fa20
Back in 2009, you were locking your funds to a compressed ECDSA public key as shown:
0345baa5126ef28873efb402ca1c0a45ea9f6acfd59858252f5d28d3a6d116373c
I hope I made it clear to you.