黑马程序员技术交流社区

标题: 一道关于创建类的java题目! [打印本页]

作者: Dev_Lzf    时间: 2013-4-4 15:56
标题: 一道关于创建类的java题目!
本帖最后由 田磊阳 于 2013-4-6 19:16 编辑

题目如下:
          开发经理要小蔡设计一个Person类。这个类里需要有一个String类型的属性name用于保存一个人的姓名,一个int类型的属性age用于保存一个人的年龄。这个类是个公有类,类里还要提供一个有两个参数的公有构造方法,其中第一个参数是姓名,第二个参数是年龄。当然,相应的getter和setter也要提供。
同时,经理说他将要使用这个类来存储他的客户信息,并且要把这些信息存入一个java.util.HashSet里面。经理还把他的相关示例代码给了小蔡,如下PersonSetDemo类所示。
因为小蔡刚入职,还是一名Java菜鸟,请你帮他完成这个Person类。
   PersonSetDemo的代码如下:
          import java.util.*;
public class PersonSetDemo {
  void someOperation() {
    Set<Object> set = new HashSet<Object>();
    set.add(new Person("张三", 25));
    set.add(new Person("李四", 32));
    set.add("可能还会有一些其它的东西");
  }
}


请问这样的person类要怎么写???

作者: 黑马_位志国    时间: 2013-4-4 22:22
该Person类如下:
public class Person {
        private String name;
        private int age;
        public Person(String name, int age) {
                this.name = name;
                this.age = age;
        }
        public String getName() {
                return name;
        }
        public void setName(String name) {
                this.name = name;
        }
        public int getAge() {
                return age;
        }
        public void setAge(int age) {
                this.age = age;
        }
}
作者: 朱德帅    时间: 2013-4-5 14:50
  1. package com.heima.practise;

  2. public class Person {
  3.         //属性私有
  4.         private String name;
  5.         private int age;
  6.         public Person() {}
  7.         //提供带参的构造方法
  8.         public Person(String name,int age) {
  9.                 this.name = name;
  10.                 this.age = age;
  11.         }
  12.         //提供get,set方法
  13.         public String getName() {
  14.                 return name;
  15.         }
  16.         public void setName(String name) {
  17.                 this.name = name;
  18.         }
  19.         public int getAge() {
  20.                 return age;
  21.         }
  22.         public void setAge(int age) {
  23.                 this.age = age;
  24.         }
  25.        
  26. }
复制代码

作者: 范鹏飞    时间: 2013-4-5 22:41
  1. public class Person
  2. {
  3.         //将年龄和姓名私有化
  4.         private String name;
  5.         private int age;

  6.         //无参构造
  7.         Person(){}
  8.         //有参构造
  9.         Person(String name, int age)
  10.         {
  11.                 this.name = name;
  12.                 this.age = age;
  13.         }
  14.         //set姓名方法
  15.         public void setName(String name)
  16.         {
  17.                 this.name = name;
  18.         }
  19.         //get姓名方法
  20.         public String getName()
  21.         {
  22.                 return name;
  23.         }
  24.         //set年龄方法
  25.         public void setAge(int age)
  26.         {
  27.                 this.age = age;
  28.         }
  29.         //get年龄方法
  30.         public int getAge()
  31.         {
  32.                 return age;
  33.         }
  34. }
复制代码

作者: 黄小贝    时间: 2013-4-6 04:37
我怎么觉得这题重点是在HashSet啊,不重写equal和hasHash这个东西能玩的动吗?



作者: 邵震    时间: 2013-4-6 06:28
黄小贝 发表于 2013-4-6 04:37
我怎么觉得这题重点是在HashSet啊,不重写equal和hasHash这个东西能玩的动吗?

;P为什么 你总是神出鬼没的  
作者: 黄小贝    时间: 2013-4-6 16:52
邵震 发表于 2013-4-6 06:28
为什么 你总是神出鬼没的

额,清明出去玩的比较嗨,还有我过的美国时间,所以,半夜看见我不要惊讶~~~
作者: 邵震    时间: 2013-4-6 17:00
黄小贝 发表于 2013-4-6 16:52
额,清明出去玩的比较嗨,还有我过的美国时间,所以,半夜看见我不要惊讶~~~ ...

你好地球人,欢迎去我们那美克星做客!
作者: 黄玉昆    时间: 2013-4-6 19:48
如果问题未解决,请继续追问,如果没有问题了,请将帖子分类 改为“已解决”,谢谢
作者: Dev_Lzf    时间: 2013-4-6 22:43
黄小贝 发表于 2013-4-6 04:37
我怎么觉得这题重点是在HashSet啊,不重写equal和hasHash这个东西能玩的动吗?

我也感觉是这样,求指导





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2