面对Java大作业的放飞自我系列

(2)开放式程序设计(40分)

      设计一个Person类模拟人类的属性和行为,并围绕该类,结合实际设计一系列类组成一个应用实例,要求充分使用注释,且至少用到以下知识点中的6个:

1)方法重载       2)方法重写     3)成员变量隐藏   4)继承

5)抽象类      6)接口       7)匿名内部类   8)异常类 

9)正则表达式   10)容器类   11)线程   12)文件流

二、开放式程序设计部分(40分):

1、作品设计思路合理。 (20分)

2、运用到了题目中的至少6个知识点。 (10分)

2、注释运用充分规范合理。 (5分)

3、类的设计能体现面向对象的思想。  (5分)

  (本部分按上述标准评分,各项具体分值由作品相应完成情况而定)

以上是我本学期java课程的期末大作业。我很开心的放飞自我了。首先决定写一个故事,一个狗血的故事。

第一步,定义一个person类

/*写一个person类【抽象】,
 * 一男一女:(基本信息)-名字,性别,年龄,身高等
 * 【继承】【成员变量隐藏】【方法重写】【方法重载】
 *  双方在圣诞节那天约会,
 *  女的圣诞树下等人,一直打电话发消息【正则表达式】
 *  然而男的不出现,只收到一个短信--分手
 *  放背景音乐--分手快乐【异常类】
 */  
/**
 * 
 * 抽象类
 * @author poision
 *
 */
public abstract class Person{
    private String name;//名字
    private String sex;//性别
    private String age;//年龄
    private String height;//身高
    private String career;//职业(学生,白领等)
    public Person()
    {
        super();
    }
	
	public Person(String name, String sex, String age, String height, String career) {
		super();
		this.name = name;
		this.sex = sex;
		this.age = age;
		this.height = height;
		this.career = career;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getHeight() {
		return height;
	}

	public void setHeight(String height) {
		this.height = height;
	}

	public String getCareer() {
		return career;
	}

	public void setCareer(String career) {
		this.career = career;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	/**
	 * 约会
	 */
	 public abstract void date();
	 /**
	  * 吃饭
	  */
	 public abstract void eat();
	 
}
然后就是杂七杂八得了

简单的就是说Girl类继承person类,运用成员变量隐藏,方法重写。+一个为了凑知识点的接口

/**
 * 
 * 继承
 * 方法重写
 * 成员变量隐藏
 * @author posion
 *
 */

public  class Girl extends Person implements Draw{
		public Girl() {
			super();
		}
		String id;//学号
		String school;//学校名字
		//public Girl(String name, String sex, String career,String age) {
		public void set(String num,String sname)
		{
			id = num;
			school = sname;
		}
		@Override
		public void draw() {
			// TODO Auto-generated method stub
			
		}
		@Override
		public void date() {
			// TODO Auto-generated method stub
			
		}
		@Override
		public void eat() {
			// TODO Auto-generated method stub
			
		}
}

	/**
	 * 会画画接口
	 */
	public interface Draw{
	    /**
	     *
	     * 画画
	     *
	     */
	    public void draw();
	} 

最后一个是智障的放飞自我。。。。我估计我交作业要被打回来

import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * 正则表达式-电话,邮箱
 * @author poision
 *
 */
@SuppressWarnings("unused")
public class Story {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Girl a = new Girl();//定义一个故事的主人公
		 
		a.setName("陈小希");
		a.setSex("女");
		a.setAge("18");
		a.setHeight("158cm");
	    a.setCareer("学生");
		a.id = "12345";
		a.school = "晨曦中学";
		Calendar calender = Calendar.getInstance();//创建时间对象
		calender.setTime(new Date());//初始化日历时间
		String year = String.valueOf(calender.get(Calendar.YEAR));    //获取年  
		String month = String.valueOf(calender.get(Calendar.MONTH) + 1);   //获取月份,0表示1月份  
		String day = String.valueOf(calender.get(Calendar.DAY_OF_MONTH));    //获取当前天数  
		String week = String.valueOf(calender.get(Calendar.DAY_OF_WEEK)-1);//获取当前星期
		  int hour = calender.get(Calendar.HOUR_OF_DAY);       //获取当前小时  
		  int min = calender.get(Calendar.MINUTE);          //获取当前分钟  
		  int second = calender.get(Calendar.SECOND);          //获取当前秒  
System.out.println(""+year+"年"+ month + "月"+ day + "日" + "星期" +week+" "+ hour+":"+min +":" + second);				
System.out.println("    ,~,       ");
System.out.println("    )))       "+a.getName());
System.out.println("   ((((***    "+a.getSex());
System.out.println("   \\) \\/      "+a.getAge());
System.out.println("   /   \\      "+a.getHeight());
System.out.println("  /     \\     "+a.getCareer());
System.out.println(" /       \\    "+a.id);
System.out.println(",`_,`_,`_,`   "+a.school);
System.out.println("\n陈小希约江城圣诞节约会,陈小希8点就在圣诞树下等\n");
for(int i = 0;i<10;i++) {
	System.out.println("\n");
}
System.out.println("°★.☆° .★·°∴°★.°·∴°☆ ·°∴° ☆..·");
System.out.println("☆°★°∴°°∴ ☆°.·★°∴°.☆°★°∴°°∴ ☆°.·★°∴°");
System.out.println("            ◢◣。                  ◢◣。");
System.out.println("          ◢★◣。                ◢★◣。  ");
System.out.println("       ◢☆■☆◣。            ◢☆■☆◣。");
System.out.println("   ◢■■■■■◣。        ◢■■■■■◣。");
System.out.println("︸︸︸||︸︸︸!!︸︸︸||︸︸︸  ");
System.out.println("☆°★°∴°°∴ ☆°.·★°∴°.☆°★°∴°°∴ ☆°.·★°∴°");
System.out.println("°★.☆° .★·°∴°★.°·∴°☆ ·°∴° ☆..·.");
System.out.println("晚上11点,江辰也没来");


      String regex1 = "^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$";//验证邮箱的正则表达式
      String jc1 = "11111111@qq.com";
      if(jc1.matches(regex1)) {//匹配是否符合邮箱的正则表达式
    	  System.out.println("陈小希向江辰发消息");
    	  for(int i = 0,n=0;i<10;i++) {
    		    n++;
    			System.out.println(n+"s");
    		}
    	  System.out.println("你的消息已发送\n\n叮咚~\n");
      }
      System.out.println("还是毫无反应\n\n陈小希给江辰打电话");
  
      String regex2 = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,1,2,5-9])|(177))\\d{8}$";//电话的正则表达式
      String jc2 = "13988888866";
      if(jc2.matches(regex2)) {//匹配是否符合电话号码的正则表达式
    	    for(int i = 0,n=0;i<30;i++) {
    		    n++;
    			System.out.println("du..嘟...");
    		}
          System.out.println("你好你拨打的用户无人接通,请稍后再拨!\n");
    	  System.out.println("最后江辰发短信:陈小希,我们分手吧!");
    	  Music p=new Music();  
	        p.play();//播放背景音乐
	        System.out.println("﹏正在播放:圣诞节﹏");
      }
	}

}
播放背景音乐的是copy别人的= =。。这个这个就靠个人发挥了。

我的处女秀就这样完了,江辰跟陈小希也分手了~悄咪咪的撤退~


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值