Caneel Bay - Go for lunch and take in a swim or snorkel on their amazing public beach. They also have amazing (expensive) restaurants for dinner too.
Rhumb Lines - Go for dinner and take in the fun ambiance in this open court restaurant. The food is great, but a bit pricey.
Uncle Joe's - Go for lunch at this road side BBQ - no ambiance - just eating on picnic benches, but the food is good and cheap.
Chateau Bordeax - for lunch - The best view on the island - Also right next to famous Reef Bay hiking trail. We had lunch and then hiked the trail. Note: The trail is long and you have to bring lots of water with you and get back before it is too dark. When we finished the trail, we were sitting on the side of the road and we couldn't see a local bus so a local person drove us to town. I felt very, very safe in St. John at all times and was not concerned about hitching a ride with any of the locals. about 5 years ago