java基础知识练习题与总结

Java基础

1. 下列哪一种叙述是正确的( D 

A abstract修饰符可修饰字段、方法和类 (可以修饰方法和类不可以修饰字段)

B 抽象方法的body部分必须用一对大括号{ }包住(抽象方法没有方法体)

C 声明抽象方法,大括号可有可无 (抽象方法没有方法体)

D 声明抽象方法不可写出大括号

 

2. 现有类Test,在横线处填写哪项会报错( A )

public class Test {

public String myOverLoad(int i,String str){return null;}

                                                                                       

}

A public String myOverLoad(String str,int i){return null;}

(方法重载与形参位置无关,与个数和类型有关)

B public void myOverLoad(){}

C public void myOverLoad(String str){}

D public void myOverLoad(int i,String str){return null;}

 

3.  Math.round(11.5)返回(  A )Math.round(-11.5)返回( D  )

A 12四舍五入结果)  B 11 C -12 D -11

 

4. 是否可以继承String(B )

A 可  B 不可String类被final修饰为最终类不能被继承

 

5. try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code( B)

A会执行,在return前执行

B会执行,在return后执行finally {}无论什么情况都会执行,在return后,返回值前切记返回值前

C不会执行

D编译错误

 

6. swtich不能作用在(D )

A int

B short

C long

D byte

 

7. 以下关于String描述正确的是(   ABC )多选

A String 不可变StringBufferStringbuilder可变

B StringBuilder是非线程安全的

C StringBuffer是线程安全的

D 以上都不对

 

8. String s = "HelloWorld";

String s1 = new String("HelloWorld");

System.out.println(s.equals(s1));输出( A)

A true(一个内存地址)  B false  C null  D 编译错误

 

9. 今天是2015612日,以下能将今天日期格式化为2015-06-12字串的日期格式化对象是(  D )

A new SimpleDateFormat("yyyy-mm-dd")

B new SimpleDateFormat("yyyy-mm-DD")

C new SimpleDateFormat("yyyy-MM-DD")

D new SimpleDateFormat("yyyy-MM-dd")(只有MM月大写

 

10. 数组( B  length()这个方法; String A length()这个方法

A 有  B 没有 (数组时属性非方法)

 

11. Vector是线程安全的(A )

A 对  B不对

 

12. ArrayList无序的容器( B)

A对  B不对(有序,可重复)

 

13. HashSet无序 ( A  )LinkedHashSet(没见过)无序 (  B)

A   B不对

 

14. HashMap无序 ( A ),LinkedHashMap(没见过)有序( B)

A对  B不对

 

15.  以下哪些类实现了/继承了Collection接口 ( C)多选

A Vector属于List接口下并继承Collection接口

B TreeSet(属于Set接口下并继承Collection接口

C HashMap(属于Map接口下

D ArrayList(属于List接口下并继承Collection接口

 

16. 以下描述正确的是 C  

A  Set可重复(不可重复) ,比如set.add(1);set.add(1);set将会存储2个元素:{1,1}

B  HashMapKey可重复(不可重复),比如map.put(1,”a”);map.put(1,”b”),map将会存储2个元素:{1=a,1=b}

C  ArrayList存储的数据可重复,比如arrayList.add(1);arrayList.add(1)arrayList 将会存储2个元素:[1,1]

D  以上都不对

 

17. 以下哪种方法可以实现多线程(  AB    )多选

A 继承Thread只能单继承缺点,重写run方法

B 实现 Runnable接口(可以多继承,现实run方法

C 实现Callable接口

D 实现run方法

 

18. java正则表达式中,表示一个或者多个空格的是 (  B 

A \s*

B \s+

C \S{1,n}

D \S{1}

 

19. java正则表达式中,表示数字的是 ( C  

A \w

B \i

C \d

D \m

 

20. 以下可以处理字符流的类是(  B 

A javAio.BufferedInputStream

B javAio.BufferedReaderReader字符流类

C javAio.FileInputStream

D javAio.FilterOutputStream

 

21. 下列代码中不能获取到Class类的对象的是(D  )

A String str = "abc"; Class c1 = str.getClass();

(通过Object类的getClass()方法

B Class c2 = int.TYPE;(等同int.class)

C Class c1 = Class.forName ("javAlang.String");

(通过Class类的静态方法forNameString 类名)

D Button b = new Button(); Class c1 = BgetClass();

Class c2 = c1.getSuperclass();

 

22. 下列方法中用于定义线程的执行体的是( C  )

A start()线程就绪

B init()servlet初始化

C run()

D synchronized()同步方法

通过题目总结自己欠缺知识点:

Object类
该类是所有类的父类,也就是说所有类继承Object类,类的鼻祖。
Object类有大量的方法可以被其子类重写,比较常用的有:equals()、toString()、clone()、getClass()、
hashCode()返回该对象的哈希代码值
继承
子类继承父类extends,子类继承了父类哪些东西?
如果父类属性和方法修饰符为public,本类可见,同包可见,子类可见,不同包也可见。
如果父类属性和方法修饰符为protected,本类可见,同包可见,子类可见。
如果为默认修饰符,本类可见,同包可见。
如果为private修饰符,本类可见。
方法重写
说重写必然存在继承关系,子类重写父类方法约束!
子类的方法名必须与父类被重写的方法名相同
子类的形参必须与父类被重写的参数相同
子类的返回值必须和父类一致或是其子类
子类方法不能缩小父类方法可见权限
方法重载
说到重载必然是一个类中发生的事情,方法的重载约束!
方法名必须一致
参数个数和类型必须不同
与方法修饰符和返回值类型无关

初学java的可以边学边练,效果盛佳! 3 编程题(改代码,写代码) 3.1 下拉列表实现 使用ajax技术完成下拉列表对应显示内容。 当选择下拉列表某项时: 显示对应内容: 参考答案: 1)ActionServlet copytextpop-up package web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ActionServlet extends HttpServlet { public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String uri = request.getRequestURI(); String path = uri.substring(uri.lastIndexOf("/"), uri.lastIndexOf(".")); response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); if(path.equals("/prod")){ String name = request.getParameter("name"); System.out.println("name:" + name); if(name.equals("qq")){ out.println("性价比高"); }else if(name.equals("bmw")){ out.println("驾驶性能出众"); }else{ out.println("好车,也贵"); } } out.close(); } } package web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ActionServlet extends HttpServlet { public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String uri = request.getRequestURI(); String path = uri.substring(uri.lastIndexOf("/"), uri.lastIndexOf(".")); response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); if(path.equals("/prod")){ String name = request.getParameter("name"); System.out.println("name:" + name); if(name.equals("qq")){ out.println("性价比高"); }else if(name.equals("bmw")){ out.println("驾驶性能出众"); }else{ out.println("好车,也贵"); } } out.close(); } } 2)product.jsp copytextpop-up <%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <html> <head> <title>Insert title here</title> <style> #d1{ background-color:#fff8dc; width:220px; } </style> <script type="text/javascript" src="js/prototype-1.6.0.3.js"> </script> <script type="text/javascript"> function getXmlHttpRequest(){ var xhr = null; if((typeof XMLHttpRequest)!='undefined'){ xhr = new XMLHttpRequest(); }else { xhr = new ActiveXObject('Microsoft.XMLHttp'); } return xhr; } function change(v1){ var xhr = getXmlHttpRequest(); xhr.open('get','prod.do?name='+v1,true); xhr.onreadystatechange=function(){ if(xhr.readyState == 4){ var txt = xhr.responseText; $('d1').innerHTML = txt; } } xhr.send(null); } </script> </head> <body style="font-size:30px;"> <select style="width:120px;" id="s1" onchange="change(this.value);"> <option value="qq">QQ</option> <option value="bmw">宝马</option> <option value="ff">法拉利</option> </select> <div id="d1"></div> </body> </html>
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值