岸 and 海岸: a bank or shore and a coast
Compare riverbanks and lakeshores with a sea coast, separating a viewer’s location from a boat’s position and the coast’s material.
Where water meets land
岸, read きし, means the bank or shore of a river, lake, or sea. 川の岸に木が生えています。 says that a tree grows on the riverbank.
湖の岸で船を見ました。 says that someone saw a boat from the lakeshore. It does not establish that the boat was touching the shore.
Land bordering the sea
海岸, read かいがん, means coast or seashore. 海岸に沿って歩きました。 says that someone walked along the coast.
岩の多い海岸です。 describes a coast with many rocks. Automatically translating 海岸 as a sandy beach would conflict with 岩の多い.
Reading the water body and activity location
川 in 川の岸 identifies which body of water the bank borders. 海岸 includes the sea as its reference, so do not automatically use it for a lakeshore.
海岸から船が見えます。 says that a boat is visible from the coast. 海岸 is the viewing place; the boat’s precise position needs separate information.
Does 海岸 alone establish that the place is a sandy beach?
Show the answer and why
No. It identifies land bordering the sea. Sand, rocks, and other features require additional information.

