A lot of Web designers out there who have these skills also bring to the table solid graphic and Flash design skills.
If you want to store or process data that the user enters in a form, you will need PHP, and MySQL if you want a database (like user accounts and passwords.
Java can be used for many things, from applets to interacting with servers.
Flash animation is used in Rich Internet Applications. This is the growing method for creating things such as calculators and clocks, along with java.
So it all depends on what you want. If you are going to have textboxes and forms, you will need php. If you want extra interactivity, like applications and other flashy stuff (haha!) you will need java or flash.
Hope this helps! If you have any further questions, please post them! :D
For those types of sites you will need both a graphic designer and a programmer. And I would say if you truly want the results and look of the site - this project is more like an "8" on a scale of "10" being the hardest.
The design firm you go with needs to be able to show you already working sites similar to the results you want because a lot of people will take you for granted working on a project this large. I've known sites like this to go anywhere from 30K to 130K just depends on the firm you find and their fees. Shop around - but don't settle until you know for sure that they are REALLY able to build you the right type of site with easy maintenance from your end of things and easy data queries.
It's going to be a long process, but those types of sites do make money if they are designed properly.