There are several words in English to describe an area that is close to water:
beach, coast, shore, strand, waterfront.
Could anyone please explain what they mean exactly and when can we use them interchangeably?
Some specific questions:
Which of them are suitable for rivers, lakes, seas and oceans, respectively?
Does a beach always have sands? Can I use beach if there are only rocks near the water?
The word strand means beach in some other languages. Is this word still being used in everyday English?
Can I say a place is waterfront if it is not part of a town, for example, a forest or a cliff next to water?