When you initially see the cost of a cruise, you may think it is high. You have to consider it includes accommodation, transfers to resort ports, entertainment, plus food in certain restaurants.
Yes, often you will have to pay extra for some restaurants on board, alcohol is rarely included, some options such as spa treatments may be chargeable, trips when docked in ports may be extra too.
Some larger more expensive cruise lines, or packages may or may not include these items
So factor in these things when thinking of the price, plus you get to see many wonderful destinations rather than just one.