黑马程序员技术交流社区

标题: 建立对象,初始化对象小练习 [打印本页]

作者: fycrik    时间: 2013-6-27 12:37
标题: 建立对象,初始化对象小练习
本帖最后由 fycrik 于 2013-6-27 12:40 编辑
  1. /*
  2. 第一步:用class 定义类(图纸)
  3. 分析:
  4. 1 属性,几乎都要限制为私有private,通过提供公共方法对其访问

  5.        / 构造函数 函数名(){}  用于将对象初始化
  6. 2 行为|
  7.        \ 一般函数

  8.                        / 匿名对象new c(),不需要对象名称,只用一次时可以new匿名对象
  9. 3 按照类来new 一个对象|
  10.                        \ 普通对象 Car c = new Car(),有名称


  11. ***需求:定义一个 “人”,具有属性:姓名,年龄。具有行为:cry(),getname(),setName(),
  12.              / 一出生就没有名字,也没有年龄,并说出自己的年龄和姓名,并且哭
  13. 初始化为三种|  一出生就有姓名,并说出自己的年龄和姓名,并且哭
  14.                       \ 一出生就有姓名和年龄,并说出自己的年龄和姓名,并且哭

  15. */

  16. class Person
  17. {
  18.         private String name;                                                                                         //属性:姓名,设为私有
  19.         private int age;                                                                                                 //属性:年龄,设为私有


  20.         //初始化1:一出生就没有名字,也没有年龄,并说出自己的年龄和姓名
  21.         Person()                                                                                                                                       
  22.         {
  23.                 System.out.print("name = "+name + ",,age = "+ age);
  24.                 cry();
  25.         }


  26.         //初始化2:一出生就有姓名,并说出自己的年龄和姓名
  27.         Person(String n)
  28.         {
  29.                         name = n;
  30.                         System.out.print("name = "+name + ",,age = "+ age);
  31.                         cry();

  32.         }


  33.         //初始化3:一出生就有姓名和年龄,并说出自己的年龄和姓名
  34.         Person(String n ,int num)
  35.         {
  36.                 if (num>0 && num<130)
  37.                 {
  38.                         name = n;
  39.                         age = num;
  40.                         System.out.print("name = "+name + ",,age = "+ age);
  41.                         cry();
  42.                 }
  43.                 else
  44.                         System.out.println("年龄越界");
  45.         }


  46.         //行为1:cry()
  47.         public void cry()
  48.         {
  49.                 System.out.println("  **名字叫"+name + "正在cry。。。");
  50.         }

  51.         
  52.         //行为2:getName()
  53.         public void getName()
  54.         {
  55.                 System.out.println("name = "+ name);

  56.         }


  57.         //行为3:setName()
  58.         public void setName(String n)
  59.         {
  60.                 name = n;
  61.         }
  62. }

  63. class  PersonTest
  64. {
  65.         public static void main(String[] args)
  66.         {
  67.                 //new三个初始化的对象
  68.                 System.out.println("///new三个初始化的对象///");
  69.                 Person p1 = new Person();
  70.                 Person p2 = new Person("wangwu");
  71.                 Person p3 = new Person("zhangsan",-6);

  72.                 //让三个对象都哭,生下来就哭是初始化的结果,再哭就是各自的行为
  73.                 System.out.println("///让三个对象都哭,生下来就哭是初始化的结果,再哭就是各自的行为///");
  74.                 p1.cry();
  75.                 p2.cry();
  76.                 p3.cry();

  77.                 //p3改名为lisi,并报出自己的名字
  78.                 System.out.println("///p3改名为lisi,并报出自己的名字///");
  79.                 p3.setName("lisi");
  80.                 p3.getName();

  81.         }
  82. }
复制代码

QQ截图20130627123934.png (6.66 KB, 下载次数: 0)

这是结果

这是结果

作者: 许庭洲    时间: 2013-7-4 05:51
值得学习ing!
作者: Just_Only    时间: 2013-7-4 08:46
支持了。。。很好。。。




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