For me, it's what the clothes are intended for.
A bathing suit is intended to be worn while laying in the sun or swimming.
I have bras and underpants that cover more than my bikini, but I won't be going on the deck to lay in the sun in them. Unders are intended to be worn underneath. Bathing suits are not.
Pajamas that can be recognized as pajamas are meant to be slept in. Even if you put them on clean that morning to go to get coffee (perhaps you sleep in the nude and have to put on *something*), they are still meant for sleep, and therefore aren't appropriate to my eyes to be worn in public.
People who sleep in a t-shirt and yoga pants or sweats can get away with it, because those can't immediately be recognized as pajamas.
The cruise ship isn't our dormitory, and we're not attending college while on the ship. (now if it's a special university at sea ship, go for it!)
Exactly. Unless it's totally obvious that the clothes have been slept in. I guess I just like being basically clean and neat when in public (which is why we have so many suitcases when we vacation, because the 3 of us tend to change clothes on a hot day, so we look neat and clean...and it takes us longer to get ready for dinners on the cruise because we dress up even for normal nights, and we all take showers before dressing).
It's just not something I do, to wear obvious pajamas in public, and it's not something DH chooses to do, nor is it something DS (while we're in charge of him) gets to do either.