A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 侯宪博 中级黑马   /  2012-7-26 06:46  /  1305 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

学类与对象的时候脑海里浮现出的小程序
我顺手就把他写了下来
学习就是这样
要乐在其中


/*
需求:编写一个模仿人的程序可以说话,可以哭,可以有年龄有名字,可以比较年龄,并根据不同的情况做出不一样的反映。
思路:编写一个人的类,把所有有关人的属性全部封装进人的类中。通过主程序创建人的对象而初始化人的属性。
过程:
1.预先定义一个人的类。
2.创建有关年龄姓名的的属性。并且封装在类内,禁止外部直接访问,提供方法以调用相关属性
3.创建说话的方法,让人的对象具有说话的功能,并且可以说出自己的名字和年龄。
4.可以创建多个人互相比较年龄。
*/

public class NewDemo {
public static void main(String[] agrs)
{
  People p=new People();
  People p1=new People();
  p.setname("史蒂夫");
  p.setage(20);
  p.say();
  p1.setname("马克思");
  p1.setage(21);
  p1.say();
  p.agebj(p1);
  p1.agebj(p);
  
}
}

class People
{
private int age;
private String name;
private static boolean q=true;//此变量用来控制比较年龄时的公平性,当年龄相等时先说的具有优先当哥哥权利。
People()
{
  
}

/**
此方法是人说话的方法,可以说出自己的年龄和名字。
*/
public void say()
{
  System.out.println(this.name+":我叫"+this.name+",我"+this.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;
}
/**
此方法是定义人物哭泣的方法,是私有方法只在本类内使用。
*/
private void cry()
{
  System.out.println(this.name+":呜呜呜呜呜呜呜~~~~~~~~~");
}
/**
此方法定义了人的比较年龄的方法,人和人之间可以互相比较年龄,可以根据年龄的大小做出相应的反应。
*/
public void agebj(People a)
{
  if(a.getage()<this.age)
  {
   System.out.println(this.name+":"+a.getname()+"没有我大,我"+this.age+"岁了,他才"+a.getage()+"岁,我比他大"+(this.age-a.getage())+"岁,"+a.getname()+",叫哥哥,哈哈哈!!");
  //年龄比别人大会做出得意的行为
  }
  else if(a.getage()>this.age)
  {
   System.out.println(this.name+":"+a.getname()+"比我大,我才"+this.age+"岁,他已经"+a.getage()+"岁了,他比我大"+(a.getage()-this.age)+"岁,"+a.getname()+"哥哥,你好!!");
  //年龄比别人小会做出保守行为
  }
  else
  {
   if(q==true)
   {
    //年龄一样大先说的会做出无耻行为
    System.out.println(this.name+":"+a.getname()+"和我一样大,我"+this.age+"岁了,他也"+a.getage()+"岁了,但是,我比他高,"+a.getname()+",那也得叫哥哥,哈哈哈!!");
    q=false;
   }
   else
   {
    //年龄跟别人一样大而且你又是后说的你就哭吧
    cry();
    System.out.println(this.name+":这不公平,咱们明明一样大嘛,为啥要叫你哥哥。不公平!!!呼~呼~呼~~~");
   }
  }
}
}

评分

参与人数 1技术分 +1 收起 理由
田向向 + 1 学习要乐在其中,希望能坚持

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马