11.
12. 13.
14.
15.
16.
17.
18.
19.
20. 21. 22. 23.
24.
有1个人,人有2个宠物且有2部车。 人(people):姓名(pname)、年龄(page) 宠物(pet):编号(petid)、年龄(petage)、姓名(petname) 车(car):车牌号(cid)、车型(dtype)、价值(cvalue) 使用一个类里面包含其他类的对象的方法实现下列描述:(较难) 有1个房间,里面有1个冰箱,冰箱里面有1个饮料 房间有型号和大小2个属性
冰箱有型号、颜色和耗电量3个属性 饮料有类型和价值2个属性 定义抽象的Intrument(乐器)类,声明一个抽象的play();定义一个派生类Stringed(弦类乐器),实现父类的抽象的play()。在main()中实例化Stringed类调用play()。(难) 定义含有抽象方法print()的基类,在构造方法中调用print();print()方法在派生类被重写,该方法打印在派生类中定义的成员变量i,在定义i时给定非零的初始值; 在main()中,创建派生类的对象,然后调用print()。(难)
定义一个接口Myinterface,有两个抽象方法max()和min();在Operation类中实现该接口,同时实现抽象方法max()和min(),它们分别用于求任意三个整数中的最大值和最小值。(难)
定义一个Compute接口,有抽象方法add()、substract()、multiply()和divide();定义一个实现Compute接口的类Computer,然后创建Computer对象完成加、减、乘和除四个方法的调用。(难)
设计一个汽车类Auto,有速度属性speed,另外,有启动state,加速speedup和停止stop方法,然后,设计一个子类Bus表示公共汽车,Bus增加一个属性passenger表示乘客数,另外添加两个方法gotOn和gotOff表示乘客上下车。(较难)
设计一个时间类MyTime,包含一个构造方法,3个私有成员变量hour、minute、second以及它们相应的setter和getter方法,再加上一个转换成“XX时:XX分:XX秒”格式字符串的方法toString。(较易)
设计一个日期类MyDate,包含一个构造方法,3个私有成员变量year、month、day以及它们相应的setter和getter方法,再加上一个转换成“XXXX年XX月XX日” 格式字符串的方法toString。(较易)
实做一个点类Point,包含两个成员变量x,y分别表示x和y坐标,两个构建器Point()和Point(int x0,int y0),以及一个movePoint(int dx,int dy)方法实现点的位置移动。编写一个程序,创建两个Point对象p1,p2,分别调用movePoint方法后,打印p1和P2的坐标。(难)
使用ArrayList添加5个数(如:25、66、88、33、77),求出这5个数的平均数并显示在控制台。(较易)
使用Set添加5个元素(如:a,b,c,d,e),并将全部元素输出到控制台。(较易) 使用Map添加班上5个学生的学号和姓名,在控制台输出这5个学生的学号和姓名信息。(较易)
创建一个图书类Book,其属性有书号id、书名name、作者author和出版社press;再声明三个Book对象并赋值;然后依次用Set、List、Map集合来实现对Book对象数据的存储,并输出相应图书信息(难) 设计一个程序从Thread类派生,用它建立两个线程a和b,a线程每隔0.1秒输出一个字符‘a’,共输出10个‘a’,b线程每隔0.2秒输出一个字符‘b’,也输出10个‘b’。(难)
25. 请计算1~100之间的奇数之和,并实现在屏幕上每2秒钟输出一步计算结果如:(难) 1+3=4 4+5=9 ??
三、类的综合应用(共5道,抽1道,每道20分)
(一)武器问题(较难)
1.定义一个Weapon (武器)抽象类 要求:1)定义两个属性
(1) 武器的名称 name (2)武器的颜色 color
2)定义一个抽象方法showMe()
2.定义Pistol (手枪) Sword (军刀) Axe (斧头)三个具体的武器类继承Weapon 1)分别重写showMe方法,该方法功能是在控制台显示该武器的信息 注:武器的信息就包括它的名称和颜色
3.定义一个入口类Access 在main方法里面去测试功能 要求: 1) 定义一个List集合
2) 建立上面的三种武器对象各3个,给他们取名字,并且指定颜色 3) 把这些对象放在定义好的List里面
4) 循环这个List取出对象去调用武器类的showMe方法
(二)宠物问题(较难)
1.定义一个Animal(动物)抽象类 要求:1)定义两个属性
(1) 动物的名称 name (String类型) (2)动物的毛色 color (String类型) 2)定义一个抽象方法showMe()
2.分别定义Cat Dog Snake三个宠物类继承Animal
1)分别重写showMe方法,该方法功能是在控制台显示该宠物的信息 注:宠物的信息就包括它的名称和颜色
3.定义一个入口类Access 在main方法里面去测试功能 要求: 1) 定义一个List集合
2) 建立上面的三种宠物对象各3个,给他们取名字,并且指定毛色 3) 把这些对象放在定义好的List里面
4) 循环这个List取出对象去调用动物类的showMe方法
(三)家具问题(较难)
1.定义一个Furniture (家具)抽象类 要求:1)定义两个属性
(1) 家具的名称 name (String类型) (2)家具的颜色 color (String类型) 2)定义一个抽象方法showMe()
2.定义Sofa(沙发) Desk(桌子) Chair (椅子)三个具体的家具类继承Furniture 1)分别重写showMe方法,该方法功能是在控制台显示该家具的信息 注:家具的信息就包括它的名称和颜色
3.定义一个入口类Access 在main方法里面去测试功能 要求: 1) 定义一个List集合
2) 建立上面的三种家具对象各3个,给他们取名字,并且指定颜色 3) 把这些对象放在定义好的List里面
4) 循环这个List取出对象去调用家具类的showMe方法
(四)、箱子问题(难)
1.定义一个Box(箱子)类 要求:1)定义一个属性
(1) 箱子容器(用List集合表示) box 提示:用来存放物品 2.定义Apple(苹果)类 要求: 1) 定义两个属性
(1) 苹果的体积 bulk (用float数据类型) (2) 苹果的颜色 color(用String数据类型)
2) 定义一个方法public void showMe() 该方法功能是在控制台展示苹果的属性
3.在箱子类里面添加几个方法
要求: 1) 建立方法可以往箱子里面放一个苹果
public void putApple(Apple apple) 提示:直接放在List集合里面
2) 建立方法可以在箱子里面取出一个苹果 public Apple getApple()
提示:取的时候注意判断箱子里面是否还有苹果存在
3) 建立方法查看箱子里面还有多少个苹果 public int getSize()
4. 建立一个Access类 在main方法里面创建一个箱子对象和5个苹果对象测试往 箱子里面放苹果取苹果的方法
(五)、子弹发射问题(难) 1.定义一个Pistol (枪)类
要求:1)定义一个属性,弹夹 (用int表示) charger 提示:用来表示当前子弹数量 2) 定义一个方法public void shoot()
该方法的功能是在控制台打印发射两个字,但是需要判断当前弹夹里 面还有子弹没 如果没有就打印没有子弹的提示, 注意:成功发射了之后弹夹会少掉一个子弹 3) 定义一个方法用来给弹夹上子弹 public void setBullet ()
注意:调用此方法一次给弹夹上20发子弹
4) 重载上子弹方法 提供可以指定上多少数量子弹的功能
public void setBullet (int i) 注意:最多能指定30发 public int getSize()
4. 建立一个Access类 在main方法里面创建一个手枪对象测试一下上面4个方法 正确否 给手枪上子弹 发射子弹
四、JDBC操作数据库(共5道,抽1道,每道20分)
<说明!>:此题作为填空题,每道题10个空,每个空2分.黄色部分为填空。
(一)用数据库存放城市信息(难)
1.创建名为test的数据库
2.在数据库test中创建城市(City)表 字段 City _id City _name City _country City _note 描述 城市编号 城市名称 所属国家 城市简介 长度 32 30 30 200 类型 Varchar Varchar Varchar Varchar 备注 Pk(主键) 3.建立一个类来封装城市信息(City),放在com.zdsoft.po包下
提供四个私有属性: 城市编号 城市名称 所属国家 城市简介
4.建立 CityDao类,利用DBUtil类 建立方法对城市信息进行查询与删除操作 该类放在com.zdsoft.dao包下
1) 建立方法通过城市名称查询单个城市
public City findCity(String city_name)
注:查询出来的城市信息封装在Ctiy对象里
2) 能够通过Id删除某条城市信息
public void deleteCity(String city_id)
5.建立Access类在main函数中测试对城市表的查,删方法 该类放在com.zdsoft.access包下.
package com;
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.Statement; public class DBUtil { private Connection conn = null; // 数据库连接对象 private Statement st = null;// 执行sql语句的对象 private ResultSet rs = null;// 存放查询结果的对象
/** * 获得ResultSet * @return ResultSet */ public ResultSet getRs() { return rs; } /** * 获得数据库连接 */ private void getConnection() { final String DRIVERNAME = \ final String URL = \ final String LOGIN = \数据库管理员用户名 final String PASSWORD = \数据库密码 try { Class.forName(DRIVERNAME); // 加载驱动程序 conn = DriverManager.getConnection(URL, LOGIN, PASSWORD); } catch (Exception e) { System.out.println(\执行getConnection()方法出错:\ e.printStackTrace(); } } public DBUtil(){ getConnection(); try { st = conn.createStatement(); } catch (SQLException e) { e.printStackTrace(); } } /** * 数据库查询 * @param sql 传入的SQL语句 */
public void executeQuery(String sql){ try{ rs=st.executeQuery(sql);//执行SQL语句获得结果集 }catch(Exception e){