这周的JAVA作业理所当然是要放到今天写啦,毕竟今天下午没课(笑)
那么接下来就是本次JAVA课的作业啦
动手动脑1:在子类中,调用父类中被覆盖的方法
class Father{ void treasure() { System.out.println("从父亲公司继承了500W"); } } class Kids extends Father{ void treasure() { System.out.println("连存款都没有穷到顿顿吃泡面"); } void noTreasure() { treasure(); super.treasure(); } }; public class Class4 { public static void main(String[] args) { Kids me=new Kids(); me.noTreasure(); } }
这里通过Kids类的noTreasure()方法来调用自己的treasure()方法和super关键字修饰的父类treasure()方法
结果如下:
课堂练习:用JAVA web写一个小型的课程管理程序(下面这种感觉的)
要求:
(1)新课程信息必须唯一,如有重复,提示用户“课程名称重复,重新录入”;
(2)要求判断任课教师为王建民、刘立嘉、刘丹、王辉、杨子光五位教师的其中一位。
(3)要求上课地点开头为“一教、二教、三教、基教”中的一种;
(4)将新课程信息添加入库。
为实现这个,我写了三个页面(这个没注释有点恶心,诸君凑合看)
首页:index.jsp,通过文本框获取信息传给信息处理页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <html> <head> <title>添加课程</title> </head> <body style="text-align:center;"> <br><br><br> <form name="form2" action="Proto.jsp" method="post"> 课程名称 <input type="text" name="name"><br><br> 任课教师 <input type="text" name="teacher"><br><br> 上课地点 <input type="text" name="place"><br><br> <input type="submit" value="保存"> </form> <form name="form" action="next.jsp" method="post"> <input type="submit" value="显示上课计划"> </form> </body> </html>
信息处理页:Proto.jsp,判断文本框信息是否符合要求,若符合要求则将信息存在session中
<%@ page language="java" import="java.util.*" import="java.text.*" pageEncoding="utf-8"%> <!DOCTYPE html> <html> <head> <title>添加处理中……</title> </head> <body style="text-align:center;"> <pre> <% int i=0; if((String)session.getAttribute("teacher0")!=null){ i= Integer.parseInt((String)session.getAttribute("number"))+1; } String name=new String(request.getParameter("name").getBytes("ISO-8859-1"),"utf-8"); String teacher=new String(request.getParameter("teacher").getBytes("ISO-8859-1"),"utf-8"); String place=new String(request.getParameter("place").getBytes("ISO-8859-1"),"utf-8"); int c=0,p=0,d=0; for(int j=0;(String)session.getAttribute("name"+j)!=null;j++){ if((String)session.getAttribute("name"+j)==name){ c=1;out.println("课程名称重复,不通过"); } } if(!(teacher.equals("王建民"))&&!(teacher.equals("刘立嘉"))&&!(teacher.equals("刘丹"))&&!(teacher.equals("王辉"))&&!(teacher.equals("杨子光"))){ p=1;out.println("这个老师不认识,不通过"); } if(!(place.equals("一教"))&&!(place.equals("二教"))&&!(place.equals("三教"))&&!(place.equals("基教"))){ d=1;out.println("这个教室不存在,不通过"); } if(c==0&&p==0&&d==0){ session.setAttribute(("name"+i),name); session.setAttribute(("teacher"+i),teacher); session.setAttribute(("place"+i),place); out.println("保存成功"); } session.setAttribute(("number"),""+i); %> <form name="form3" action="index.jsp" method="post"> <input type="submit" value="返回主页面"> </form> </pre> </body> </html>
(这里有一个小插曲,如果在文本框传值时没将值的编码方式改为utf-8就会传出乱码,即使输入了正确的名称也不合要求无法储存)
信息查询页:next.jsp,打印已经储存的上课计划
<%@ page language="java" import="java.util.*" import="java.text.*" pageEncoding="utf-8"%> <!DOCTYPE html> <html> <head> <title>上课计划</title> </head> <body style="text-align:center;"> <br><br><br> <pre> <% String str=(String)session.getAttribute("teacher0"); if(str==null){ out.println("目前没有上课计划哦"); } else { int num=Integer.parseInt((String)session.getAttribute("number")); for(int i=0;i<=num;i++){ out.println("第"+(i+1)+"门"); out.println("上课地点:"+(String)session.getAttribute("place"+i)); out.println("任课教师:"+(String)session.getAttribute("teacher"+i)); out.println("课程名称:"+(String)session.getAttribute("name"+i)); } } %> <form name="form3" action="index.jsp" method="post"> <input type="submit" value="返回主页面"> </form> </pre> </body> </html>
运行结果如下:
就是这样啦