当前位置:文档之家› 5本经典的Java学习教程推荐

5本经典的Java学习教程推荐

5本经典的Java学习教程推荐
5本经典的Java学习教程推荐

5本经典的Java学习教程推荐

讲授java的书籍非常之多,java教材也五花八门,学习java看什么书合适呢?这个可能仁者见仁智者见智,通过对北大青鸟兰州优越校区老师的咨询,推荐5本经典的JAVA学校教程。

Java从入门到精通(附光盘)

作者:魔乐科技(MLDN)软件实训中心

内容简介:本书以零基础讲解为宗旨,用实例引导读者深入学习,采取【基础知识→核心技术→高级应用→项目实战】的讲解模式,深入浅出地讲解Java的各项技术及实战技能。另外光盘中还包含40小时的全程同步视频教学录像。

推荐原因:非常适合初学者来学习,将的比较入门,通过此书可以一览java技术的全貌。

Java核心技术:卷Ⅰ基础知识

作者:Cay S. Horstmann参与编写《Core Java Server Faces》第2版(Prentice Hall, 2007)。Cay是圣何塞州立大学计算机科学系教授、Java的倡导者,Cray Cornell已经编写并教授程序设计专业课程20余年,是Apress的创始人。

图书简介:

《Java核心技术》出版以来一直畅销不衰,深受读者青睐,每个新版本都尽可能快地跟上Java开发工具箱发展的步伐,而且每一版都重新改写了部分内容,以便适应Java的最新特性。全书对Java技术的阐述精确到位,叙述方式深入浅出,并包含大量示例,从而帮助读者充分理解Java语言以及Java类库的相关特性。

推荐原因:世界通用的核心java书籍,讲的是最权威的。

JAVA核心技术卷II:高级特性

作者:Cay S.Horstmann《Java Server Faces, Second Edition》(Prentice Hall,2007)的合著者之一。Cay是San、Jose州立大学计算机科学专业的教授,同时也是Java坚定的拥护者之一。

图书简介:

本书是Java技术权威指南,全面覆盖Java技术的高级主题,包括流与文件、XML、网络、数据库编程、高级Swing、高级AWT、JavaBean构件、安全、分布式对象、脚本、编译与注解处理等,同时涉及本地化、国际化以及Java SE 6的内容。本书对Java技术的阐述精确到位,叙述方式深入浅出,并包含大量示例,从而帮助读者充分理解Java语言以及Java类库的相关特性。

推荐原因:世界通用的核心java书籍,讲的是最权威的。

Java编程思想(第4版)

作者简介:Bruce Eckel是MindView公司(https://www.doczj.com/doc/ce2570592.html,)的总裁,该公司向客户提供软件咨询和培训。他是C++标准委员会拥有表决权的成员之一。

图书简介:本书赢得了全球程序员的广泛赞誉,即使是最晦涩的概念,在Bruce Eckel 的文字亲和力和小而直接的编程示例面前也会化解于无形。从Java的基础语法到最高级特性(深入的面向对象概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。从本书获得的各项大奖以及来自世界各地的读者评论中,不难看出这是一本经典之作。

推荐原因:适合初学者与专业人员的经典,主要能教会你面向对象的开发思维,输入编程思想的入门教材。

Java程序员面试宝典(第2版)

作者:欧立奇

图书简介:

本书最后着力讲述了如何进行英语面试和电话面试,并对求职中签约、毁约的注意事项及群体面试进行了解析。本书的面试题除了有详细的解析外,对相关知识点也有扩展说明。希望这些内容对读者从求职就业到提升计算机专业知识有显著的帮助。

推荐原因:面试的好坏直接影响企业对您的认可程度,面试好,工作由,就业待遇高,面试糟,工作差,很可能还没工作。这本书对找工作的童鞋很有帮助哦。

java经典小程序,java入门100例!

1,编写程序,判断给定的某个年份是否是闰年。 闰年的判断规则如下: (1)若某个年份能被4整除但不能被100整除,则是闰年。 (2)若某个年份能被400整除,则也是闰年。 import java.util.Scanner; class Bissextile{ public static void main(String[] arge){ System.out.print("请输入年份"); int year; //定义输入的年份名字为“year” Scanner scanner = new Scanner(System.in); year = scanner.nextInt(); if (year<0||year>3000){ System.out.println("年份有误,程序退出!"); System.exit(0); } if ((year%4==0)&&(year%100!=0)||(year%400==0)) System.out.println(year+" is bissextile"); else System.out.println(year+" is not bissextile "); } } 2,给定一个百分制的分数,输出相应的等级。 90分以上A级 80~89 B级 70~79 C级 60~69 D级 60分以下E级 import java.util.Scanner; class Mark{ public static void main(String[] args){ System.out.println("请输入一个分数"); //定义输入的分数为“mark”,且分数会有小数 double mark; Scanner scanner = new Scanner(System.in); mark = scanner.nextDouble(); //判断是否有输入错误。 if(mark<0||mark>100){

CoreJava第一次考试——1

考试一 试题类型:不定项选择题 试题1指出下面语句编译错误的是() A. byte b=128; B. boolean flag=null; C. long a = 2147483648L; D. float f=0.9239; 试题2完成代码计算10的阶乘并输出,应该填入的代码是()… … long result = 1; for(int i = 2; i <= 10; i++) { < 填入代码 > } System.out.println("result= " + result); … … A. result = result * i; B. result = i*i; C. result = i*(i+1); D. reslut = i*(i-1); 试题3下列关于数组的声明错误的是()

A. int[] arry = new int[100]; B. int[3] arry = {1,2,3} C. int[] arry = new int[]{1,2,3} D. int[][] arry = new int[3][] 试题4语句System.out.println(1+2+"java"+3+4)输出的结果是()。 A. 3java34 B. 12java34 C. 3java7 D. 12java7 试题5下面程序的输出结果是() public static void main(String[] args) { int d = 325; int sum = 0; while (d > 0) { int n = d % 10; sum += n; d /= 10; } System.out.println(sum);

java练习题

Chap1Java语言基础 Key Point ●包的基本语法 ●Java语言中的标识符,命名规范 ●八种基本类型 ●基本操作符 练习 1.(标识符命名)下面几个变量中,那些是对的?那些是错的?错的请说明理由 A.ILoveJava B.$20 C.learn@java D.antony.lee E.Hello_World F.2tigers 2.(Java程序的编译与运行)假设有如下程序: package com.corejava.chp1; public class HelloWorld{ public static void main(String args[]){ System.out.println("Hello World"); } } 问: 1)假设这个代码存在hello.java文件中,那这个程序能够编译通过?为什么?如果编译不通过,应该如何改进? 2)假设这个.java文件放在C:\javafile\目录下,CLASSPATH=.,则生的.class 文件应该放在什么目录下?如何运行? 3.(操作符)有如下代码: int a=5; int b=(a++)+(--a)+(++a); 问执行完之后,b的结果是多少? 4.(基本类型的运算)一家商场在举行打折促销,所有商品都进行8折优惠。一位程序员把这个逻辑写成: short price=...;//先计算出原价 short realPrice=price*8/10;//再计算出打折之后的价格

问:这段代码是否正确?如果正确,假设price为100,那计算之后的realPrice 值为多少?如果不正确,应该怎么改正? 5.(操作符)有如下代码: a=(a>b)?a:b; 请问这段代码完成了什么功能? 6.(表达式)int n,请用表达式表示n的个位数,十位数,百位数 7.(表达式)int a,b;请用表达式判断b是不是a的因子 8.(表达式)*double d;用表达式表示d四舍五入后的int结果 9.(表达式)*某商场促销,满百减四十,商品原价int a,请用表达式表示实际销售价格。如:商品原价230元,实际销售价格为230-80=150元。 10.(表达式)*某市出租车起步价10元,3公里后开始计价,30公里以内每公里2元,超出30公里的部分每公里3元,定义公里数n,计算最终应支付多少元。 11.(表达式)*某项查询执行之后,n条结果,每页显示m条,第i页显示第几条到第几条? 12.(表达式)**int a,b请写出3条语句,让a和b交换值(请至少找出三种做法)

【免费下载】Core Java经典教程 一

Core Java 辅导资料第一章: 一、Java 简介 Java 语言是编译后再解释执行,Java 源码是通过编译生成一种特殊的.class 的中间字节码文件,然后再有JVM 进行解释执行,JVM (Java 虚拟机)是运行在操作系统中,用来屏蔽的系统间的差异。Java 虚拟机处理编译后的字节码,并根据不同的系统来申请相应的资源,这样就可以保证程序的运行正常,在Java 虚拟机的基础之上,由解释器来解释执行字节码文件。Java 虚拟机+解释器=JRE (Java RunTime Environment )Java 运行环境JRE+Java 系统类库=JDK (Java Deveple Kit )JAVA 开发工具包Java 简单特性:① JVM 本身是不能垮平台的。② java 语言对指针进行了上层的封装,它保证能够通过这个指针(引用),来访问有效的内存单元。③ java 语言不允许多继承,使继承关系成树状图,每个类都只能有一个父类。 ④ java 语言的开发效率高,但执行效率低。(相当于c++的55%)⑤ java 的垃圾回收机制,在java 中new 的对象不需要向c++一样进行delete 操作,JVM 会根据情况回收垃圾对象(懒汉机制,等待资源没有的时候才回收)。我们只能够建议JVM 进行垃圾回收,例如(System.gc() RunTime.gc()这两个方法就是建议JVM 进行垃圾回收的方法)。 JDK —— java 开发工具包(类库和运行命令) JRE —— java 运行环境 JVM —— java 虚拟机(解释执行的核心,对字节码进行翻译成运行环境的机器码,它可以屏蔽平台差异。但JVM 是不跨平台的。 ) 类库 工具 JRE JDK

CoreJava第三次内测试卷

《CoreJava第三次内测》 一、单选题(共33分,每题2分,共66分) 1.下列对Java中的继承描述错误的说法是()。 A.子类至少有一个基类 B.子类可作为另一个子类的基类 C.子类除了包含它直接定义的属性外,还包含其父类的私有属性 D.子类继承父类的方法访问权限保持不变 2.try {}里有一个return语句,那么紧跟在这个try后的finally {}里的代码会不会被执行,什么时候被执行? ( ) A.不会执行 B.会执行,在return前执行 C.会执行,在return后执行 D.会执行,可能在return前执行,也可能在return后执行 3.构造方法是否可被重写和重载()。 A.不能重写,可以重载 B.可以重写,不能重载 C.不能重写,不能重载 D.可以重写,可以重载 4.给出一段程序,试判断哪个是正确的结果() public class rtExcept{ public static void throwit(){ System.out.print(“throwit”); throw new RuntimeException(); } public static void main(String [] aa){ try{ System.out.print(“hello “); throwit(); } catch(Exception re){ System.out.print(“caught ”); } finally{ System.out.print(“finally ”); } System.out.print(“after ”); } } A、hello throwit caught B、hello throwit caught finally after C、hello throwit RuntimeException after D、hello throwit caught finally after RuntimeException 5.给出一段程序,试判断哪个是正确的结果() public class myprogram{ public static void main (String args[]){ try{ System.out.print(“Hello world ”); } finally{ System.out.println(“Finally executing”); }}} A、无法编译,因为没有指定异常 B、无法编译,因为没有catch子句 C、Hello world D、Hello world Finally executing 6.对于catch子句的排列,下列哪种是正确的( ) A.父类在先,子类在后 B.子类在先,父类在后 C.有继承关系的异常不能在同一个try程序段内 D.一个try后只能放一个catch 7.Java中,泛型数据类型声明可能出现的符号是( ) A.R B.D C.T D.都可以 8.关于Java中异常的叙述正确的是:() A.异常是程序编写过程中代码的语法错误B.异常是程序编写过程中代码的逻辑错误C.异常出现后程序的运行马上中止D.异常是可以捕获和处理的 9.所有的异常和错误皆继承哪一个类?() A.java.io.Exception B.https://www.doczj.com/doc/ce2570592.html,ng. Exception C.https://www.doczj.com/doc/ce2570592.html,ng. Throwable D.https://www.doczj.com/doc/ce2570592.html,ng.Error 10.下列关于try-catch-finally语句的描述中,错误的是() A.try语句后面的程序段将给出处理异常的语句 B.catch()方法跟在try语句后面,它可以是一个或多个 C.catch()方法有一个参数,该参数是某种异常类的对象 D.finally语句后面的程序段总是被执行的,该语句起到提供统一接口的作用 11.给出下面的代码

《CoreJava》理论试题题库答案版

《CoreJava》理论试题题库答案版得分阅卷人 一、单选题(20题,共38分) 1、(2分)基本数据类型float的包装类是哪项,(C) A( Integer B( Double C( Float D( Character 2、(2分)使用下列哪个修饰符定义的类不能被继承( C ) A. static B. abstract C. final D. Native 3、(1分)下列类的定义,错误的是( D ) A. public class test extends Object{……} 学院班级姓名 B. final class operators{……} 密封线内不要答题 C. class Point{……} D. void class Point{……} 4、(2分)静态内部类是指使用(B)来修饰的内部类 A(final B.static C.public D.protected 5、(2分)匿名内部类的特点下面错误的是(b) A、匿名内部类没有构造方法 B、匿名内部类是静态的 C、它主要用于继承其他类或实现接口 D、它是一个特殊的局部内部类 6、(2分)下列哪个类不是java基本数据类型的封装类,( C ) A. Integer; B. Byte; C. String; D. Character; 7、(1分)基本数据类型char的包装类是哪项,( D ) A int

B char C String D Character 8、(2分)阅读以下程序代码,作出分析:public class Test { public static void main(String[] args) { boolean b = true; b=new Apple().equals(new Apple()); System.out.println(b); }}class 1 / 49 Apple{}该程序的输出结果是:(A) A(false B(true C. 不确定结果 D. 编译错误 9、(2分)List接口的特点是哪项,(C) A(不允许重复元素,元素无顺序 B(不允许重复元素,元素无顺序 c(允许重复元素,元素有顺序 D(允许重复元素,元素无顺序 10、(2分)关于HashMap和HashTable的说法错误的是( D ): A. HashMap和HashTable都是Map接口的实现类 B. HashTable是线性安全的 C. HashMap是线性不安全的 D(HashTable要比HashMap的性能高一点 11、(2分)当程序调用一个null对象的方法或属性时,这将引起(A )异常

JAVA小练习(带答案)

Java 小练习 难度:4 范围:corejava day02: 函数计算器(必做)FunctionDemo.java 等额本息还款计算(必做)Credit.java 加法练习器(选作)AddDemo.java day03: 判断航班日期(必做)AirlineDemo.jar 计算验证条形码(必做)Ean13Barcode.jar day04: 验证身份证号码的正确性IdCardDemo.java 实现文字竖排V align.java day05: 1)根据观察,蟋蟀的鸣叫频率与夏天的温度有关,具体的关系有公式:t=(c+40)/10决定,其中c代表蟋蟀每分钟的鸣叫数,t代表摄氏温度。在给定的类Centigrade的基础上,实现centigrade方法返回相应的摄氏温度值。 2)欧几里德算法又称辗转相除法,用于计算两个正整数a,b的最大公约数。其计算原理依赖于下面的定理: 定理:gcd(a,b) = gcd(b,a % b) (a>b 且a mod b 不为0) 在给定类Euclide的基础上计算两个正整数的最大公约数,要处理a % b 为0情况。 3)实现数组匹配游戏 在两个数组中,索引相同的位置如果值相同用a表示 在两个数组中,索引不同的位置如果值相同用b表示 例: int[] arrOne = { 2, 1, 4, 5, 6 }; int[] arrTwo = { 2, 4, 7, 1, 6 }; 以上数组中有2个a 2个b 在给定类Matching的基础上完成match方法 package day02; import java.util.Random; import java.util.Scanner; /** * 加法练习器选做题目

Java基础编程试题

Java基础编程试题(1)(图) 安全中国更新时间:2009-09-02 00:09:49 责任编辑:ShellExp 热点: 第17章常见的Java上机面试题 在程序员面试中,主要的考试形式分为笔试和上机编程考试两部分。笔试主要考查面试者的基础是否牢固;上机考试主要考查面试者的实际开发能力和技术技巧。 上机编程考试,要求面试者能够根据题目的要求,使用一种编程工具,编写全部代码并调试运行。这主要是考查面试者代码书写和编程的熟练程度。值得注意的是,这类面试题要求能够正确运行,往往要求面试者使用比较原始的JDK编译方式也就是使用DOS命令提示符,而不是提供Eclipse或者JBuilder等快速开发环境。本章将经常出现的上机编程题进行分类,希望能够给读者带来帮助和启示。 Java基础编程试题(1) 在上机编程类的面试题中,大部分涉及基础编程,例如算法、语法、常用的类等知识点。 面试题1 怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出"我ABC",而不是"我ABC+汉的半个"。 试题分析 本面试题容易产生困惑的是中文字符和英文字符,在这里需要考虑汉字和英文字符的占用字节数问题,中文

字符占两个字节,英文字符占一个字节,理解了这个,就很容易完成本题了。参考答案 具体代码实现如下: 1.package core_java; 2.import 3.public class InterceptionStr { 4.static String ss; 5.atches(m)) {

杰普-Core-Java2014测试题-附最新答案

班级::日期: Core Java试题 选择填空题:全部为多选题,只有全部正确才能得分。 1.编译java程序的命令是___B_____;运行java程序的命令是____A____;产生java文挡的命令是 _D_______;查询java类型是否是serializable类型的命令是___C_____;产生java安全策略文件的命令是___E_____;产生类型归档文件.jar的命令是__F______。 A. java B. javac C. serialver D.javadoc E.policytool F.jar 2.在一个java原文件中,import, class, package语句的顺序是_F_______。 A.import class package B.class import package C.package class import D.import package class E.class package import F.package import class 3.下面叙述正确的有_______CDEF_____________。 A.在一个java原文件中只能定义一个class B.在一个java原文件中只能定义一个interface C.在一个java原文件中可以定义多个class D.在一个java原文件中可以定义多个interface E.在一个java原文件中可以定义多个class和interface F.在一个java原文件中只能定义一个public class 4.java程序中程序运行入口方法main的签名正确的有____AB____。 A.public static void main(String args[]) B.static public void main(String[] args) C.public void static main(String[] args) D.public void main(String args[]) 5.java程序中程序入口方法main的参数代表命令行输入参数,命令行参数从____A____开始。 A. 0 B. 1 C.-1 6.以下属于正确的java注释有____ACD____。 A. //This is comment B. /*This is comment C. /**This is comment*/ D. /*This is comment*/ 7.以下能作为class, interface, method或variable有效标识符的有______ADF__________。 A.For B.boolean C.23age D. _id E.my name F. $this_is_a_long_variable_name 8.以下不是java关键字的有__D______。 A. super C.this D.NULL E.true 9.以下能作为char类型的字面值的有__BD______。 A. “e” B.’f’ C. ‘\u12’ D.’\u0012’ 10. byte变量的取值围是____B____。 A. 0 - 65535 B.-128 – 127 C.-256 – 255 D.0 - 32767 11.以下正确的有_____AC___。

core_java面试题

JA V A面试题-COREJA V A部分 1.在main(String[] args)方法内是否可以调用一个非静态方法? 答案:不能 2.同一个文件里是否可以有两个public类? 答案:不能 3.方法名是否可以与构造器的名字相同? 答案:可以。 public class Test { public Test(String iceboy) { System.out.println(iceboy); } public void Test(String iceboy) { System.out.println(iceboy); } public static void main(String[] args) { Test a = new Test("abc");//输出“abc” a.Test("iceboy");//输出“iceboy” } } 4. 初始化了一个没有run()方法的线程类,是否会出错? 答案:不会。 第一种方法:直接继承Thread类。 public class Test { public static void main(String[] args) { ThreadClass t = new ThreadClass(); t.start(); System.out.println("end");//输出“end” } } class ThreadClass extends Thread //Thread类已经实现了空的run()方法。 { } 第二种方法:实现Runnable接口 public class Test { public static void main(String[] args) {

一些java开发系统必用的基础知识

一些java开发系统必用的基础知识 2.1 JavaEE平台 Java EE是J2EE的一个新的叫法。改掉它名字的目的是为了明确J2EE就只是一个Java企业应用程序。Java EE的核心是EJB3.0,它提供了一个更方便的企业应用程序框架。伴随网络和EJB容器概念的诞生,软件应用行业开始担心sun的合作伙伴是否会不断地在Java平台上引入更新的标准框架,这使得软件应用行业的业务核心组件架构不知所措,以及是否需要EJB的声音来显示这种犹豫。 JavaEE(Java Platform Enterprise Edition)[16]是Java2平台下的一种标准,具备高维护性、高移植性、高扩展性与高复用性等优秀特点。JavaEE以面向接口为原则松散耦合,己发展成为包含Applet、JDBC、JSTL、WebServer等诸多实用性技术的标准平台。 2.2 MVC 框架 MVC[17、18]全名是Model View Controller,即模型-视图-控制器。MVC 框架巧妙地把业务逻辑和数据显示分开来,具有高重用性、低耦合性、可维护性高、生命周期成本低、部署快等让许多开发者热衷选择特点。是架构设计过程中的必选框架。 MVC是一种软件设计范式。它通过分离业务逻辑、数据和接口显示来组织代码,并且把业务逻辑收集到一个组件中。它不需要重写业务逻辑,同时改进和定制界面和用户交互。MVC是的开发很独特,它把传统的输入、输出和处理功能映射到一个逻辑图形用户界面结构中。 2.3 SSH 框架 SSH2[19]全称是的缩写,是一个成熟又经典集成框架,是一种轻量级的企业级Java EE平台,具有高实用性和易扩展性,主要职责分为数据持久层、业务逻辑层、视图层和控制层。基于该框架应用可在普通Web容器中运行,无需获得EJB容器的支撑。 SSH框架集是很多软件设计过程中使用的框架集。此框架就是基于MVC模式开发出来的。MVC模式已经成为现代J2EE开发中的一种常见模式,并深受JSP、PHP和其他开发人员的喜爱。MVC模式包括视图、控制器和模型。将应用程序分成这三个部分后,每个部分都处理自己的任务。视图层提取用户的输入信息并将其提交给控制器。控制器根据某些选择决定模型层将处理该请求。模型层用来处理用户的请求,会根据业务逻辑代码来返回数据,到最后会通过视图层来显示给用户看。 2.3.1 Struts2就是基于MVC设计模式的一个网络应用框架,它的本质是一个servlet。在MVC设计模式中,Struts2被用作一个控制器来建立模型和视图之间的数据交互。Struts 2是下一代Struts。它是在struts 1和webwork 技术的基础上开发的一个新的struts 2框架。它的新struts 2架构与struts

java 集合框架(习题与答案)解析

java 集合框架(习题) 集合框架 Key Point * Collection 接口、Set 接口、List 接口基本操作 * List 接口及其实现类 * Set 接口及其实现类 * 迭代遍历 * Hash 算法与hashCode 方法 * Comparable 接口 * Map 接口及其实现类 * 遍历Map * 泛型 练习 1. 填空 Collection 接口的特点是元素是对象; List 接口的特点是元素有(有|无)顺序,可以(可以|不可以)重复; Set 接口的特点是元素无(有|无)顺序,不可以(可以|不可以)重复;Map 接口的特点是元素是键值对,其中值可以重复,键不可以重复。 2. (List)有如下代码 import java.util.*; public class TestList{ public static void main(String args[]){ List list = new ArrayList(); list.add(“Hello”); list.add(“World”); list.add(1, “Learn”); list.add(1, “Java”); printList(list); } public static void printList(List list){ for(Object obj:list){ String str=(String)obj; System.out.println(obj); } } } 要求: 1) 把//1 处的代码补充完整,要求输出list 中所有元素的内容 2) 写出程序执行的结果Hello java Learn World 3) 如果要把实现类由ArrayList 换为LinkedList,应该改哪里?ArrayList 和LinkedList 使用上有什么区别?实现上有什么区别?

java考试题

试题类型:项目试题 1.试题类型:项目试题 1)实现购物车的功能根据给定代码完成ShoppingCart的addItem方法,editCart方法,delCart方法getAllCarts方法,getTotalPrice方法。提示:首先完成addItem方法。 2)写一个方法trim去掉一个字符串中单词间多余的空格,使得相邻两个单词间有且只有一个空格。例如当输入字符串是"Hello!__Game_programming_ _world!"时,调用该方法后字符串变为"Hello!_Game_programming_world!"。("_"表示空格) [50分] 考生答案: 【此题未答】 试题类型:不定项选择题 2.下面都属于线程安全的类是( )。[5分] A. ArrayList B. Vector C. HashMap D. Hashtable 考生答案:B 参考答案:BD 3.ArrayList的初始化内容如下: ArrayList list = new ArrayList(); list.add("java"); list.add("aaa"); list.add("java"); list.add("java"); list.add("bbb"); 下面可以删除list中所有的“java”的代码是:[5分] A. for(int i = list.size() - 1; i >= 0; i--) { if("java".equals(list.get(i))) { list.remove(i); }} B. for(int i = 0; i < list.size(); i++) { if ("java".equals(list.get(i))) { list.remove(i); }} C. list.remove("java"); D. list.removeAll("java"); 考生答案:A 4.下面的代码用于输出字符数组ch中每个字符出现的次数,应该填入的代码 是 public static void main(String[] args) { char[] ch = { 'a', 'c', 'a', 'b', 'c', 'b' }; HashMap map = new HashMap();

java初学练习

Chp1 Java 语言基础 Key Point ●包的基本语法 ●Java 语言中的标识符,命名规范 ●八种基本类型 ●基本操作符 ●if 语句和switch 语句 练习 1.(标识符命名)下面几个变量中,那些是对的?那些是错的?错的请说明理由 A. ILoveJava B. $20 C. learn@java D. antony.lee E. Hello_World F. 2tigers 2.(Java 程序的编译与运行)假设有如下程序: package com.corejava.chp1; public class HelloWorld{ public static void main(String args[]){ System.out.println("Hello World"); } } 问: 1)假设这个代码存在hello.java 文件中,那这个程序能够编译通过?为什么?如果编译不通过,应该如何改进? 2)假设这个.java 文件放在C:\javafile\目录下,CLASSPATH=.,则生成的.class文件应该放在什么目录下?如何运行? 3.(if 语句)读入一个整数,判断其是奇数还是偶数 4.(操作符)有如下代码: int a = 5; int b = (a++) + (--a) +(++a); 问执行完之后,b 的结果是多少? 5.(基本类型的运算)一家商场在举行打折促销,所有商品都进行8 折优惠。一位程序员把这个逻辑写成: short price = ...; // 先计算出原价 short realPrice = price * 8 / 10; //再计算出打折之后的价格 问:这段代码是否正确?如果正确,假设price 为100,那计算之后的realPrice值为多少?如果不正确,应该怎么改正? 6. (操作符)请说明>>与>>>之间的区别。 7. (操作符)有如下代码:

Java学习资料下载大全

Java学习资料下载大全 java的开发建议使用jbuilder、eclipse或是netbeans eclipse在这里免费下载:https://www.doczj.com/doc/ce2570592.html,/downloads/ netbeans在这里免费下载:https://www.doczj.com/doc/ce2570592.html,/netbeans/6.0/final/ 教程的话,你可以看看这个: 精通JBuilder 2005 中文版高清PDF+随书光盘 https://www.doczj.com/doc/ce2570592.html,/dispbbs_121_172861_1.html 是中文版,也有随书光盘中的实例。 下面还有一些好的资料和视频供你参考一下: Java 编程初步傻瓜书 https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=159167 数据结与算法Java语言版 https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=160250 精通JBuilder 2005 中文版高清PDF+随书光盘 https://www.doczj.com/doc/ce2570592.html,/dispbbs_121_172861_1.html JSF JavaServer Faces in Action https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=160229 Spring in Action (第二版) https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=146170 Manning jQuery in Action https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174769 Spring In Action https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174107 AspectJ in Action https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174106 Hibernate In Action https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174105 Struts in Action https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174005 Lucene in Action https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=173991 Java Extreme Programming Cookbook https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174729 Java Programming Cookbook https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=173667 Beginning Java Objects https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174685 Building Java Enterprise App https://www.doczj.com/doc/ce2570592.html,/dispbbs.asp?boardID=121&ID=174684 Ant: The Definitive Guide

java开发常见基础面试题(题库全)

Java面试题基础面试题库集 面试题集共分为以下十部分: 一、Core Java:1 —95 题1 —24 页 基础及语法: 1 —61 题1 —13 页 异常:62 —69 题13 —15 页 集合:70 —80 题15 —18 页 线程:81 —90 题18 —21 页 IO & Socket:91 —95 题21 —24 页 二、OOAD & UML:96 —101 题24 —25 页 三、XML:102 —105 题26 —29 页 四、SQL:106 —109 题29 —31 页 五、JDBC & Hibernate:110 —121 题31 —35 页 六、Web:122 —161 题35 —44 页 七、EJB & Spring:162 —179 题44 —47 页 八、数据结构& 算法& 计算机基础:180 —187 题47 —51 页 九、C++:188 —201 题51 —55 页 十、Weblogic 及其它(附加部分) 1 ——13 题55 —57 页 一、CoreJava 部分:(共95 题:基础91 道,中等难度4 道) 基础及语法部分:(共61 题:基础60 道、中等难度1 道) 1、面向对象的特征有哪些方面? 【基础】 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3)封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4)多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态

JAVA基础考试题

1704班基础考试题 1、下列关于java中抽象类的说法正确的有(A) A、含有抽象方法的类必须声明为抽象类 B、抽象类中不可以有非抽象方法 C、抽象类中至少需要包含一个抽象方法 D、抽象类无法实例化 2、下列哪个关键字可以用于实现同步(C) A、native B、static C、synchronized D、finalize 3、下列哪些集合属于Collection的子类(C D)[选两项] A、TreeMap B、Hashtable C、ArrayList D、HashSet 4、下面关于线程的说法错误的是(B) A、线程其实就是进程中的一个控制单元,它负责就是程序的执行。一个进程中至少有一个线程 B、当一个类实现了Runnable接口后,并实现了其run方法,就可以直接调用这个类的start方法开启线程 C、继承Thread类或者实现Runnable接口都可以封装线程要执行的任务 D、Thread类本身就是一个线程类,可以直接创建Thread类对象,开启线程 5、下面关于map集合说法正确的是(A) A、map集合中不能直接使用Iterator进行迭代 B、对map集合使用keySet方法,会得到所有value的值组成一个list集合 C、使用map的append方法可以向map集合中添加元素 D、使用removeAll方法可以将map集合中的元素清空

6、下面的程序执行后count的结果是(B) A、0 B、10 C、9 D、11 7、关于被私有访问控制符private修饰的成员变量,以下说法正确的是(C) A、可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B、可以被两种类访问和引用:该类本身、该类的所有子类 C、只能被该类自身所访问和修改 D、只能被同一个包中的类访问 8、编译并运行以下代码将发生什么(D) A、代码编译时报出错误提示信息“equals() 方法未定义” B、编译通过,抛出运行期异常 C、输出Both are equal D、输出Both are not equal

CoreJava知识点

第一章 corejava的入门一:什么是语言 语言=os+数据结构+算法+思想 os:操作系统 数据结构:队,栈,二叉树,链表 算法:做游戏开发时非常重要 面试题:int a>0,b>0只使用一条输出语句输出a,b的最大值 System.out.println((|a+b|+|a-b|)/2); 二:安装jdk 1)根据不同的操作系统下载不同的jdk 2)安装jdk 如果是windows,直接双击 如果是unix,在shell中运行 a)拷贝到家目录 b)sudo chmod 777 /opt c)cp jdk_6u32_liunx_i586.bin /opt d)cd /opt e)sudo ./jdk_6u32_liunx_i586.bin 3)配置环境变量 在bashrc中配置环境变量,打开该文件,追加内容 vi ~/.bashrc //添加以下内容 CLASSPATH=. JAVA_HOME=/opt/jdk1.6.0_32 PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH JAVA_HOME PATH CLASSPATH指定自己编写的class文件的路径 JAVA_HOME指定JDK的安装目录 三:JDK:java Development kit Sun公司在推出Java语言的同时,也推出了Java的一系列开发工具,如JDK——Java Development Kit(Java开发工具包)。 可以从网上免费下载。通常以JDK的版本来定义Java的版本。 时间版本在Java标准函数库中的类(class)的数量 ---------------------------------------------------------------------- 1996 JDK1.0(Java1.0) 250 重点applet 1997 JDK1.1(Java1.1) 500 比较适于开发图形界面 1998 JDK1.2(Java2) 2300 可达到平台原始速度, 可用于书写正规企业级应用程序或移动应用程序 2000 JDK1.3(Java2) 2002 JDK1.4(Java2) 计算能力大幅度提升 2004 JDK1.5(Java5.0) 3500 对语言本身作重大改变, 更稳定、更安全、更高效 补充:JDK主要包括内容: a)Java虚拟机:负责解析和执行Java程序。Java虚拟机可运行在各种平台上; b)JDK类库:提供最基础的Java类及各种实用类。 https://www.doczj.com/doc/ce2570592.html,ng, java.io, java.util, javax.swing,java.sql包中的类都位于JDK类库中。 c)开发工具:这些开发工具都是可执行程序,主要包括: javac.exe 编译工具; java.exe 运行工具;

相关主题
文本预览
相关文档 最新文档