No weakness is good for health.
Physical health: generally refers to the physical health of the human body, which is conducive to eliminating diseases and maintaining vitality; Conducive to improving the quality of life. Therefore, option ② is correct; Moral health: The most important thing is not to meet your own needs at the expense of others. You have the concept of distinguishing between true and false, good and evil, honor and disgrace, beauty and ugliness. You can restrain and control your behavior according to the norms that society considers to be standardized, and you can contribute to people's happiness. Therefore, option ③ is correct; People with mental health have complete personality and feel good about themselves. Their mood is stable, with more positive emotions than negative ones. They have good self-control ability and can maintain psychological balance. They have self-esteem, self-love, self-confidence and self-knowledge. So option ④ is correct. Option ① is too absolute. So choose D.