I have created a new domain and uploaded index.html to public directory. but it isnt displaying and cpanel default page is displaying instead. how can I change the same??
It is possible that your browser is presenting a cached copy of the page. Confirm that you are not caught in an old cache by performing a shift-reload, which forces (most) browsers to ignore their cache and request a fresh copy of the page from the server.
CPanel will stop presenting the default page when an appropriate index file is put in place. The fact that it isn't means that either you didn't put the page where CPanel is looking for it, or the file is not readable by the web server for some reason. Of these two, the first reason is the most likely.
You'll want to consult your documentation to ensure you've done what you think you've done. Also check the log files of your web service to ensure that the request you are making is getting served properly. If it still doesn't work, contact your provider and maybe they can help.