make a connection with www.google.com, how will it provide a public certificate(self signed) to my browser?
You seem to be confused about how SSL/TLS works.
Google is maybe a bad example to choose - its a certificate authority who can issue certificates recognized by most browsers. So all its certificates are self-signed.
If you have created a client certificate, that has no impact on how google's service presents its certificates.
Your client certificate only has some relevance when you connect to a service which expects to see a client certificate. While widely used within and between organizations, I'm not aware of any public services using private certificates.
Unless you have some sort of relationship with the service provider and their service is specifically configured to handle client certificates, your certificate will be ignored.
As to the case where a provider has said that they expect, and can handle client certificates, it would be very unusual (i.e. incompetent) for them to invest any trust in a self-signed certificate unless
- you have made some provision to provide them with the public key of the certificate or the signing certificate via a secure channel,
- OR there a subsequent enrollment (e.g. making a payment) using the connection secured by the client certificate which then forms the basis of the trust