GV
construct(String name) {тут окей без конструктора сложно, а 3 пункт можно пояснить если не сложно)
new Cat().setName(name)}
class CreditCard {Пример получился натянутый, но это что сходу смог придумать
private final String cardNumber
public CreditCard(boolean isMasterCard) {
this.cardNumber = isMasterCard ? generateMasterCardNumber() : generateVisaCardNumber();
}
private String generateMasterCardNumber() {
}
private String generateVisaCardNumber() {
}
}