第一部分、Java 测试题
1、列举Java 中八大基本数据类型(8)。
Int 、short、 long、 float、 char、 byte、 double 、boolean
2、依据下面描述创建类、声明属性和定义方法,创建类的实例对象,调用方法(15)。
建立一个汽车Vehicle类,包括轮胎个数TireNum,汽车颜色Color,车身重量Weight、速度speed等成员变量。并通过不同的构造方法创建实例。至少要求: 汽车能够加速speedUp,减速slowDown,停车stop。
public class Vehicle{
private int TireNum;
private String Color;
private double Weight;
private int speed;
public Vehicle{
TireNum = 4;
Weight = 1000.00;
}
Public Vehicle(int TireNum, String Color, double Weight, int speed){
this. TireNum= TireNum;
this.Color=Color;
this.Weight=Weight;
this.speed=speed;
}
public int speedup{
return 1;
}
public int slowDown{
return 1;
}
public int stop{
return 1;
}
public static void main(string[] args){
Vehicle v = new Vehicle();
v.speedup();
v.shutdown();
v.stop();
}
}
3、依据下面描述定义接口、类及实现方法,创建类的实例对象,调用方法(20)。
创建一个名称为Vehicle的接口,在接口中添加两个带有一个参数的方法start()和stop()。在两个名称分别为Bike和Bus的类中实现Vehicle接口。创建一个名称为Test的类,在Test的main()方法中创建Bike和Bus对象,并访问start()和stop()方法。
public interface Vehicle(){
public void start(int startnum);
public void stop(int stopnum);
}
public class Bike implement Vehicle(){
public void start(int startnum){
System.out.println(“startnumBike:”+startnum);
}
public void stop(int stopnum){
System.out.println(“stopnumBike:”+ stopnum);
}
public static void main(string[] args){
}
}
public class Bus implement Vehicle(){
public void start(int startnum){
System.out.println(“startnumBus:”+startnum);
}
public void stop(int stopnum){
System.out.println(“stopnumBus:”+ stopnum);
}
public static void main(string[] args){
}
}
public class Test{
public static void main(String[] args ){
Bike bike = new Bike();
Bus bus = new Bus();
bike.start();
bike.stop();
bus.start();
bus.stop();
}
}
4、依据如下描述,编程实现文件内容的读写(20)。
将该文件存储到d:\test文件夹下面,使用IO流将该文件拷贝到d盘根目录下。
Import java.io.FileInputStream;
public class IoFile{
public static void main (String[] args){
try{
FilrWrite fw = new FileWriter(“d:/test/Client.java”);
fw.flush();
fw.close();
FileInputStream fis = new FileInputStream(“d:/test/Client.java””);
FileOutputStream fis = new FileOutputStream (“d: /Client.java””);
byte[] b = new byte[1024];
while(-1 !=fis.read(b))
{
Fos.write(b);
}
fos.flush();
fos.close();
fis.close();
}
catch(IOception e){
e.printStackTrace();
}
}
}
5、完成字符串String常用操作(7)。
写一个方法来检查输入的字符串是否是回文(数据对称)?
public class StringReverseDemo {
public static void main(String[] a) {
String s = "a man,a plan,a canal, Panama";//给定的字符串
System.out.println(s + " is Palindromes? "+ (isPalindromes(s) == true ? "true" : "false"));
}
//判断是否是回文
public static boolean isPalindromes(String s) {
boolean bool = false;
String s1 = s.toLowerCase().replaceAll("[\\W\\s]", "");
char[] c = s1.toCharArray();
StringBuffer sb = new StringBuffer();
for (int i = c.length - 1; i >= 0; i--) {
sb.append(c[i]);
}
String s2 = sb.toString();
if (s1.equals(s2)) {
bool = true;
}
return bool;
}s
}
6、简要描述Set 和List区别,ArrayList和LinkedList的区别,HashMap和HashTable的区别(10)。
Set和List都继承自Collection接口
Set内部元素无顺序,List内部元素有顺序
ArrayList 是顺序存储,LinkedList是链式存储。
HashTable同步的,而HashMap是非同步的,效率上比hashTable要高。
HashMap允许空键值,而HashTable不允许
第二部分、MySQL测试题
7、依据如下需求,完成操作(20)。
数据库设计:
员工信息表:
表名 |
empInfo |
中文表名称 |
员工信息 |
||
序号 |
字段名称 |
字段说明 |
类型 |
位数 |
备注 |
1 |
empID |
员工编号 |
int |
4 |
主键 |
2 |
empName |
员工姓名 |
varchar |
10 |
|
3 |
empBirth |
出生日期 |
datetime |
||
4 |
DeptID |
部门编号 |
int |
4 |
外键 |
5 |
empSex |
性别 |
int |
1 |
1:男, 0:女,默认:1 |
6 |
empEvaluate |
任职评价 |
varchar |
默认:‘表现良好’ |
部门表:
表名 |
deptInfo |
中文表名称 |
部门名称 |
||
序号 |
字段名称 |
字段说明 |
类型 |
位数 |
备注 |
1 |
DeptID |
部门编号 |
int |
4 |
主键 |
2 |
DeptName |
部门名称 |
varchar |
50 |
操作说明如下:
- 创建数据库employee
- 创建数据表(表结构如上,注意主外键关系和默认值)
- 编写sql语句来实现如下功能
l
编写sql语句向每张表添加至少三条语句
l
查询女生的人数
l
查询所有人的信息(员工标号,员工姓名,部门编号,部门名称,出生日期,性别)
l
查询年龄最大的员工信息(姓名,年龄,部门编号,部门名称,认知评价)
l
统计90后的人员信息(姓名,出生日期,性别)
1、create database employee;
2、create table empInfo{
empId int(4) Primary key;
empName varchar(10);
empBirth datetime;
DeptId int(4) reference deptInfo(DddeptID) foreign key;
empSex int(1) enum(1,0)default 1 ;
empEvaluate varchar default ‘表现良好’;
}
Create table deptInfo {
DeptID int(4) primary key;
DeptName varchar(50);
}
3、Insert into empInfo values(1,’name1’,to_date(‘1990-10-10’,’yyyy-mm-dd
hh24:mi:ss’),11,1,’可以’);
Insert into empInfo values(2,’name2’,to_date(‘1991-10-10’,’yyyy-mm-dd
hh24:mi:ss’),12,0,);
Insert into empInfo values(3,’name3’,to_date(‘1920-10-10’,’yyyy-mm-dd
hh24:mi:ss’),13,1,);
Insert into deptInfo values(11,’tiyu’);
Insert into deptInfo values(12,’yingyu);
Insert into deptInfo values(13s,’shuxue);
4、select a.empid,a.empname,a.empbirth,a.deptid,a.empsex,
b.deptname
From empinfo a join deptinfo b on a.deptid=b.deptId;
5、select a. empname,sysdate()-a.empbirth
as 年龄,a.deptid,a.empevaluate
From empinfo a
Where rownum < 2
Order by empbirth
6、select empname,empbirth,empsex
From empinfo
Where empbirth>=to_date(‘1900-01-01’,’yyyy-mm-dd
hh24:mi:ss’)