Java设计person类,有姓名,年龄,性别。要求:该类至多只能创建一男,一女两个对象。

课后习题 Java设计person类,有姓名,年龄,性别。要求:该类至多只能创建一男,一女两个对象。   代码如下
  1. package com.liuyanzhao;
  2. class Person {
  3.     private static int c=0,c1=0;
  4.     private String name;
  5.     private int age;
  6.     private String sex;
  7.     public int getAge() {
  8.         return age;
  9.     }
  10.     public String getSex() {
  11.         return sex;
  12.     }
  13.     public String getName() {
  14.         return name;
  15.     }
  16.     private Person(String name,int age,String sex) {
  17.         this.name = name;
  18.         this.age = age;
  19.         this.sex = sex;
  20.         if(sex.equals("男")) {
  21.             c++;
  22.         } else if(sex.equals("女")) {
  23.             c1++;
  24.         }
  25.     }
  26.     public static Person create(String name,int age,String sex) {
  27.         if(sex.equals("男")) {
  28.             if(c==1) {
  29.                 System.out.println("创建失败:已经创建了一个男性对象啦");
  30.                 return null;
  31.             }
  32.         } else if(sex.equals("女")) {
  33.             if(c1==1) {
  34.                 System.out.println("创建失败:已经创建了一个女性对象啦");
  35.                 return null;
  36.             }
  37.         }
  38.         System.out.println("创建成功:"+"name="+name+",age="+age+",sex="+sex);
  39.         return new Person(name,age,sex);
  40.     }
  41. }
  42. public class Test1 {
  43.     public static void main(String[] args) {
  44.         Person p = Person.create("刘言曌",20,"男");
  45.         Person p1 = Person.create("刘䶮曌",19"男");
  46.         Person p2 = Person.create("刘亦菲"30"女");
  47.         Person p3 = Person.create("刘惜君"29"女");
  48.     }
  49. }
运行结果:   如果有其他的方法,大几不妨也贴出来分享交流   本文地址:http://liuyanzhao.com/3336.html 转载请注明    

发表评论

目前评论:1