文档库 最新最全的文档下载
当前位置:文档库 › JAVA基础+高级部分

JAVA基础+高级部分

JAVA基础+高级部分
JAVA基础+高级部分

1,下面对final,finally,finalize描述错误的是[D]

A. final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承

B.一个类一旦被声明为abstract,则该类一定不能被关键字final修饰

C.finally在异常处理时提供 finally 块来执行操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,如果有finally块的话,那么控制就会进入 finally 块

D.finalize() 方法是在垃圾收集器删除对象之后对这个对象调用的。

2、下面对重载(Overload)和重写(Override)的描述错误的是[CD]

A. 方法的重写Overriding和重载Overloading是Java多态性的不同表现

B. 重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现

C. 方法的重载除了与方法的参数列表有关系之外,还与方法的返回值有关系

D. 子类重写父类中的方法,该方法的声明应该与父类中的方法声明完全一样

3,下面对抽象类和接口的描述错误的是[C]

A. 有抽象方法的一定是抽象类,但抽象类可以没有抽象方法

B. 接口中的所有方法都是抽象的, 没有一个有程序体

C. 如果一个类没有完全实现接口中的所有抽象方法,那么这个类可以不声明为抽象方法

D. 抽象类不能被创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。

3、对下面判断正确的是[A]

A. equals方法比较的是2个对象所指向的内容是否相等,==比较的是2个对象所指向的地址是否相等

B. swtich能作用在byte上,能作用在long上,也能作用在String上

C. String和数组都有length()方法

D.String类可以被继承

5、下面有关于静态代码块描述不正确的是[D]

A.静态代码块访问静态方法的时候,静态方法的位置可以放在静态代码块的前面,也可以放在后面

B. 静态代码块访问属性的时候,那么属性必须放到静态代码块的前面

C. 当加载含有静态代码块的类时,最先执行的是静态代码块的

D. 当子类跟父类都拥有静态代码块和非静态代码块,那么当加载子类时,代码的执行顺序是:父类的静态代码块,子类的静态代码块,父类的非静态代码块,子类的非静态代码块,父类的构造方法,子类的构造方法

6、下面对多态描述不正确的是[C]

A.父类的引用指向子类的实例是多态

B.接口的引用指向实现类的实例是多态

C.父类的引用指向子类的实例中,用父类的引用去调用父类中的方法,那么执行的是父类中

D. 父类的引用指向子类的实例中,用父类的引用去调用父类中的方法,那么执行的不一定是父类中的代码

7、下面有关于final关键字错误的描述是[D]

A.被final修饰的父类就是没子孙的

B. 被final修饰的属性必须初始化

C. 被final修饰的方法,将不能被子类覆盖

D. 被final修饰的属性可以不初始化

8、下面有关于接口的描述错误的是[D]

A. 接口中的属性是public的,是static的,并且是final的

B. 接口中的方法是public的,是static的,并且是final的

C. 接口中不允许有实现了的方法

D. 没有方法体的都是抽象的方法

9、下面有关于异常描述错误的是[B]

A. 异常分为检查性异常和非检查性异常

B. NullPoiterException是非运行时异常

C. 检查性异常处理的2种方式,要么捕捉,要么抛出

D. JVM处理异常的默认操作是停止应用程序信息

10、以下说法不正确的是[A]

A) private修饰的成员变量可以在本类或其本包中子类中使用

B) JA V A类可以同时实现多个接口,但只能继承一个父类

C) static修饰的成员变量可以不经过实例化直接通过类名引用

D) static不可以和abstract修饰符同时使用。

11、下列变量定义不合法的是[C]

A) boolean flag=true; B) int k = 1+…a?;

C) char ch = “a”; D) float radius = 1/2;

12、下述哪个说法是不正确的?[B]

A) 局部变量在使用之前无需初始化,因为有该变量类型的默认值

B) 类成员变量由系统自动进行初始化,也无需初始化

C) 参数的作用域就是所在的方法

D) for语句中定义的变量,当for语句执行完时,该变量就消亡了

13、下述哪一组方法,是一个类中方法重载的正确写法?[A]

A) int addValue( int a, int b ){return a+b;}

float addValue ( float a, float b) {return a+b;}

B) int addValue (int a, int b ){value=a+b; }

float addValue ( int a, int b) {return (float)(a+b);}

C) int addValue( int a, int b ){return a+1;}

int addValue ( int a, int b) {return a+b;}

D) int addValue( int a, int b ) {return a+b;}

int addValue ( int x, int y ) {return x+y;}

14、下面关于构造函数的说法不正确的是[B]

A、构造函数也属于类的方法,用于创建对象的时候给成员变量赋值。

B、构造函数不可以重载。

C、构造函数没有返回值。

D、构造函数一定要和类名相同。

15、已知如下定义:String s = "story";

下面哪2个表达式是合法的?[AD]

A、 s += "books";

B、char c = s[1];

C、int len = s.length;

D、String t = s.toLowerCase();

16、给出如下代码:

class Test{

private int m;

public static void fun() {

// some code...

}

}

如何使成员变量m 被函数fun()直接访问?[C]

A、将private int m 改为protected int m

B、将private int m 改为 public int m

C、将private int m 改为 static int m

D、将private int m 改为 int m

17、下面哪个赋值语句是合法的?[BC]

A、float a = 2.0

B、double b = 2.0

C、int c = 2

D、long d = 2

18、下面关于继承的哪些叙述是正确的? [AD]

A.在java中只允许单一继承,接口可以继承多个接口。

B.在java中一个类只能实现一个接口。

C.在java中一个类不能同时继承一个类和实现一个接口。

D.java的单一继承使代码更可靠。

在java中一个类只能有一个直接父类,但是可以实现多个接口,在继承的同时可以实现接口,之所以取消多继承的原因是多继承使得代码产生很多问题,而使用单一继承则可以使代码更可靠。

19、关于垃圾收集的哪些叙述是对的? [B]

A. 程序开发者必须自己创建一个线程进行内存释放的工作。

B. 垃圾收集将检查并释放不再使用的内存。

C. 垃圾收集允许程序开发者明确指定并立即释放该内存。

D. 垃圾收集能够在期望的时间释放被java对象使用的内存。

20、公有成员变量MAX_LENGTH是一个int型值,变量的值保持常数值100。使用一个短声明定义这个变量. [CD]

A. public int MAX_LENGTH=100;

B. final int MAX_LENGTH=100;

C. final public int MAX_LENGTH=100;

D. public final int MAX_LENGTH=100;

21、类Teacher和Student都是类Person的子类. [C]

Person p;

Teacher t;

Student s;

p,t和s都是非空值.

if(t instanceof Person) { s = (Student)t; }

这个语句导致的结果是什么?

A. 将构造一个Student对象。

B. 表达式合法。

C. 编译时非法。

D. 编译时合法而在运行时可能非法。

22、给出下面的类:

public class Sample{

long length;

public Sample(long l){ length = l; }

public static void main(String arg[]){

Sample s1, s2, s3;

s1 = new Sample(21L);

s2 = new Sample(21L);

s3 = s2;

long m = 21L;

}

}

哪个表达式返回true? [B]

A. s1 == s2;

B. s2 == s3;

C. m == s1;

D. s1.equals(m).

23、给出下面的代码:

1) class Parent {

2} private String name;

3} public Parent(){}

4} }

5) public class Child extends Parent {

6} private String department;

7} public Child() {}

8} public String getValue(){ return name; }

9) public static void main(String arg[]) {

10} Parent p = new Parent();

11} }

12) }

哪些行将导致错误? [D]

A. line 3

B. line 6

C. line 7

D. line 8

E. line 10

24、

public class Parent {

int change() {…}

}

class Child extends Parent {

}

哪些方法可被加入类Child? [AB]

A. public int change(){}

B. int change(int i){}

C. private int change(){}

D. abstract int change(){}

25、给出下面的代码:

1) public void modify() {

2) int i, j, k;

3) i = 100;

4) while ( i > 0 ) {

5) j = i * 2;

6) System.out.println (" The value of j is " + j );

7) k = k + 1;

8) i--;

9) }

10)}

哪些行在编译时可能产生错误? [C]

A. line 4

B. line 6

C. line 7

D. line 8

26、给出下面的代码:

public class Test {

void printValue(int m){

do {

System.out.println("The value is"+m);

} while(m > 10 );

}

public static void main(String args[]) {

int i=10;

Test t= new Test();

t.printValue(i);

}

}

输出将是什么? [C]

A. The value is 8

B. The value is 9

C. The value is 10

D. The value is 11

27、public void test() {

try {

oneMethod();

System.out.println("condition 1");

} catch (ArrayIndexOutOfBoundsException e) {

System.out.println("condition 2");

} catch(Exception e) {

System.out.println("condition 3");

} finally {

System.out.println("finally");

}

}

在oneMethod()方法运行正常的情况下将显示什么?[AD]

A. condition 1

B. condition 2

C. condition 3

D. finally

28、给出下面的代码:

1) public class Test {

2} int m, n;

3} public Test() {}

4} public Test(int a) { m=a; }

5} public static void main(String args[]) {

6} Test t1,t2;

7} int j,k;

8} j=0; k=0;

9} t1=new Test();

10} t2=new Test(j,k);

11} }

12}}

在编译时哪行将导致一个错误? [D]

A. 第3行

B. 第5行

C. 第6行

D. 第10行

29、给出下面的代码: [D] if (x>0) { System.out.println("first"); }

else if (x>-3) { System.out.println("second"); }

else { System.out.println("third"); }

x的取值在什么范围内时将打印字符串"second"?

A. x > 0

B. x > -3

C. x <= -3

D. x <= 0 & x > -3

30、给出下面的代码片断:

1) class Person {

2} public void printValue(int i, int j) {/*…*/ }

3} public void printValue(int i){/*...*/ }

4} }

5) public class Teacher extends Person {

6} public void printValue() {/*...*/ }

7} public void printValue(int i) {/*...*/}

8} public static void main(String args[]){

9} Person t = new Teacher();

10} t.printValue(10);

11} }

12} }

第十行的声明将调用哪些方法? [D]

A. 第2行的方法

B. 第3行的方法//调用是父类,使用是子类的方法

C. 第6行的方法

D. 第7行的方法

31、给出下面的代码片断:

1) public void create() {

2} Vector myVect;

3} myVect = new Vector();

4}}

下面的哪些陈述是正确的? [E]

A. 第二行的声明不会为变量myVect分配内存空间。

B. 第二行的声明分配一个到Vector对象的引用的内存空间。

C. 第二行语句创建一个V ector类对象。

D. 第三行语句创建一个V ector类对象。

E. 第三行语句为一个V ector类对象分配内存空间。

32、已知如下类定义:

class Base {

public Base (){ //... }

public Base ( int m ){ //... }

protected void fun( int n ){ //... }

}

public class Child extends Base{

// member methods

}

如下哪句可以正确地加入子类中?[CD]

A、 private void fun( int n ){ //...}

B、void fun ( int n ){ //... }

C、protected void fun ( int n ) { //... }

D、public void fun ( int n ) { //... }

33、已知如下代码:

1: class Example{

2: String str;

3: public Example(){

4: str= "example";

5: }

6: public Example(String s){

7: str=s;

8: }

9:} }

10: class Demo extends Example{

11: }

12: public class Test{

13:public void f () {

14:Example ex = new Example("Good");

15:Demo d = new Demo("Good");

16:} }

哪句语句会导致错误?[DE]

A、 line 3

B、line 6

C、line 10

D、line 14

E、line 15

34、已知如下代码:

public class Test

{

public static void main(String arg[])

{

int i = 5;

do {

System.out.println(i);

} while (i>5);

System.out.println("finished");

}

}

执行后的输出是什么?[AD]

A、 5

B、4

C、6

D、finished

E、None

高级部分:

35.对于非键值对的集合类来说,以下说法正确的是[D]

A.ArrayList的实现的接口是Set

B.Set并非数学意义上的集合,是可以重复的

C.List只有一种遍历方式

D.List和Set都继承Collection

36.以下哪些说法错误的是[C]

A.List中的元素允许重复

B.Set中的元素不允许重复

C.Map继承于Collection

D.SortedSet继承于Set

37.关于Collection和Collections,说法正确的是[D]

A.Collection和Collections都是接口

B.Collection是非键值对集合的父接口,Collections则继承于Collection C.Collection和Collections中的方法都是静态的方法

D.Collection是接口,Collections是类

38.以下哪个集合类是线程安全的类?[C

]

A.ArrayList

B.HashSet

C.Vector

D.HashMap

39.以下关于HashSet集合类的说法正确的项是[B]

A.HashSet直接继承于Collection接口

B.HashSet有两种遍历方式,一种是下标访问,一种是迭代//只有一种就是迭代C.HashSet的排重功能与equals方法以及hashCode这两个方法有关

D.要想给HashSet提供排序功能,就要用到Collections

40.以下关于TreeSet集合类的说法正确的项是[B]

A.对于TreeSet的排序功能来说,比较器优先

B.TreeSet只有一种遍历方式,那就是以下标的方式访问

C.TreeSet的排重功能只与equals方法有关

D.TreeSet直接继承于Set接口

41.一个应用程序要对存放在内存的数据经常做增删的动作,那么以下说法正确的是[C] A.应该考虑选用HashSet

B.应该考虑选用ArrayList

C.应该考虑选用LinkedList

D.应该考虑选用数组

42.HashMap和HashTable的区别是[D]

A.HashMap实现了Map接口,而HashTable实现了Collection接口

B.HashMap是键值对的集合类,HashTable不是键值对的集合类

C.HashMap和HashTable都是线程安全的

D.HashMap不是线程安全的,HashTable是线程安全的

43.关于IO流的分类,说法正确的是[]

A.数据从内存走向存储介质需要输入流

B.数据从存储介质走向内存需要输出流

C.数据从内存走向存储介质,仅需要包装输出流也是可以的

D.数据从存储介质走向内存,不需要通过缓冲流对象来读取也可以的

44.关于以下流的说法,错误的是[B]

A.FileInputStream既是字节流,也是输入流,同时也是原始流

B.PrintWriter既是字符流,也是输出流,同时也是原始流

C.InputStreamReader既是字符流,也是输入流,同时也是原始流

D.BufferedReader既是字符流,也是输入流,同时也是包装流

45.如果文件的编码方式是UTF-8,那么在用输入流读的时候应该指定[B]编码

A.GBK

B.UTF-8

C.GB2312

D.BIG5

46.创建线程(Thread)的方式有两种,一种是继承类[B] ,另一种是实现接口[C] 。启动线程的方法是[D] 。线程启动后运行的是[A] 里的代码(注意:本题若选错一个,不给分)

A. run

B. Thread

C. Runnable

D. start

47. 创建一个tcp客户程序的顺序是[D]

A.1),2),3),4),5)

B.2),3),5),4),1)

C.4),1),2),3),5)

D.4),1),3),2),5)

1)获得I/O流

2)关闭I/O流

3)对I/O流进行读写操作

4)建立socket

5)关闭socket

48.以下说法正确的是[D]

A.得到一个类的Class对象,仅有一种方法

B.无论用什么方法得到同一个类的Class对象,都是同一个Class对象

C.得到一个类的Class对象,仅有两种方法

D.无论用什么方法得到同一个类的Class对象,都是不同的Class对象

java初学者学习心得

学习Java心得体会 学习了一学期的Java课程,觉得是该总结自己的心得体会了。开始学习任何一门课(包括java),兴趣最重要。一直觉得自己在学计算机编程语言,学习了很多,但每门语言都停留在知识边缘地带,都没深入到它们的精华部分,对它们的精华部分知之甚少,于是趁学校开设这门课,并且有自己的老师讲解,还有了上机的机会,比自己自学省事多了,于是鼓足信心,开始了漫长的java征途。 还记得我编写的第一个经典程序“hello W ord”。从那时起我已开始走进Java的世界。当时自己不是很理解为什么main方法一定要这样来定义public static void main(String[] args),能不能不这样写?问了好多同学,他们告诉我的答案是一样的“java本身要求就是这样子的”,但我自己不甘心,就进行了下面的好多操作:把main改个名字运行一下,看看报什么错误,然后根据出错信息进行分析;把main的public取掉,在试试看,报什么错误;static去掉还能不能运行;不知道main方法是否一定要传一个String[]数组的,把String[]改掉,改成int[],或者String试试看;不知道是否必须写args参数名称的,也可以把args改成别的名字,看看运行结果如何。结果把Hello World程序反复改了七八次,不断运行,分析运行结果,最后就彻底明白为什么了main方法是这样定义的了。接着在以后的学习中我也采用这样的方法解决问题,却发现自己的速度比别人慢了好多,我就把自己的课余时间也分一部分给了java。因为基

础是最重要的,只有基础牢固才有可能对后面的学习有更加深刻的认识! 学习一门新的语言,参考书是离不开的。听老师说订的教材偏难,不适合我们初学者,于是我在图书馆借了参考书(一本篇幅较短的入门书来学习那些最简单、最基本的东西,包括学习Java语法等)。同时,对一个最简单的程序也应该多去调试,多想想如果改动一下会出现什么结果?为什么必须那样写?多去想想这些问题然后去操作,会让你有更多的收获。这样反复地思考是很有用的。 在学习Java的语法时,Java的语法是类似c语言的,所以学习的比较轻松。唯一需要注意的是有几个不容易搞清楚的关键字的用法,public,protected,private,static,什么时候用,为什么要用,怎么用,和同学一起讨论了好久才得以解决。 在学习Java的面向对象的编程语言的特性。比如继承,构造器,抽象类,接口,方法的多态,重载,覆盖,Java的异常处理机制。对于一个没有面向对象语言背景的人来说,我觉得这个过程需要花很长很长时间,因为学习Java之前没有C++的经验,只有C语言的经验,花了很长时间,才彻底把这些概念都搞清楚,把书上面的例子反复的揣摩,修改,尝试,把那几章内容反复的看过来,看过去,看了很多遍,才彻底领悟了。 开始熟悉Java的类库。基础类库里面的类非常非常多。据说有3000多个。但是我真正使用的只有几个,比如说java.io.*; java.util.*; java.sql.*;等。

实验5 JAVA常用类

山西大学计算机与信息技术学院 实验报告 姓名学号专业班级 课程名称 Java实验实验日期成绩指导教师批改日期 实验5 JAVA常用类实验名称 一.实验目的: (1)掌握常用的String,StringBuffer(StringBuilder)类的构造方法的使用;(2)掌握字符串的比较方法,尤其equals方法和==比较的区别; (3)掌握String类常用方法的使用; (4)掌握字符串与字符数组和byte数组之间的转换方法; (5)Date,Math,PrintWriter,Scanner类的常用方法。 二.实验内容 1.二进制数转换为十六进制数(此程序参考例题249页9. 2.13) 程序源代码 import java.util.*; public class BinToHexConversion{ //二进制转化为十六进制的方法 public static String binToHex(String bin){ int temp; //二进制转化为十六进制的位数 if(bin.length()%4==0) temp = bin.length()/4; else temp = bin.length()/4 + 1; char []hex = new char[temp]; //十六进制数的字符形式 int []hexDec = new int[temp];//十六进制数的十进制数形式 int j = 0; for(int i=0;i=0&&dec<10) return (char)('0'+dec-0); else if(dec>=10&&dec<=15) return (char)('A'+dec-10); else return '@'; }

Java基础测试题(答案)

1. 有以下程序片段,下列哪个选项不能插入到行1。( D ) 1. 2.public class Interesting{ 3.//do sth 4. } (只能有一个public修饰的class) A、import java.awt.*; B、package mypackage; C、class OtherClass{ } D、public class MyClass{ } 2. 以下哪项是接口的正确定义?( B D ) A、interface B { void print(){};} (接口里的方法都是抽象的,不能有方法体) B、abstract interface B { void print() ;} C、abstract interface B extends A1,A2 //A1、A2为已定义的接口 { abstract void print(){ };} (同上) D、interface B { void print();} 1.接口可以声明为public(公共)或默认的访问权限。接口隐含表明是抽象的(abstract)的。 2.接口的方法默认即为public(公共)且是abstract(抽象)的. 3.接口中的变量默认即为public(公共), static(静态) and final(最终的)。 接口声明编译器如何解释呢 public interface Searchable {}public abstract interface Searchable {} abstract interface Searchable {}abstract interface Searchable {} interface Searchable {}abstract interface Searchable {}

java基础测试题

一、选择题48分每题2分 1.面向对象的三大特性不包括() A 封装 B 继承 C 多态 D 消息通信 2.下列声明哪个是错误的() A int i = 10; B float f = 1.1; C double d = 34.4; D long m = 4990; 3.程序的执行结果是() public class Test { public static void main(String [] args){ System.out.println(“”+'a'+1); } } A 98 B a 1 C 971 D 197 4.程序的执行结果是() public class Test { int x; public static void main(String [] args){ Test t = new Test(); t.x=5; change(t); System.out.println(t.x); } public static void change(Test t){ t.x=3; } } A 5 B 3 C 编译出错 D 以上答案都不对 5.关于类与对象说法错误的是() A 类是模板,对象是产品 B 人是类,男人是对象 C 类是对某一事物的描述是抽象的,对象是实际存在的该类事物的个体 D 汽车设计图是类,制造的若干汽车是对象 6.关于构造函数说法错误的是() A 构造函数名与类相同 B 构造函数无返回值,可以使用void 修饰 C 构造函数在创建对象时被调用 D 在一个类中如果没有明确的给出构造函数,编译器会自动提供一个构造函数7.程序的执行结果是() public class Test { public static void main(String [] args){ String str1= new String("abc"); String str2 = new String("abc"); String str3=str1; if(str1.equals(str2)){ System.out.println("true"); }else{ System.out.println("false"); } if(str1==str3){

java培训心得体会

java培训心得体会 篇一:java学习心得 . 湖南软件职业学院 毕业论文 课题:java学习心得院系:软件工程系专业:软件技术班级:软件0615班姓名:周专书指导老师:郑利娇完成时间:2009-5-12 Java实习报告 一.引言 面临毕业与就业的压力,不久将来就要从一个学生到一个社会人的转变:技 术在不断的提高,思路在不断的开阔,思想在不断的升华,更重要的是自己的理想和抱负更加的坚定。对于一个投身于IT的新人,经验谈不上,一些学习的心得倒是可以拿出来探讨一下,我们该如何面临这个似曾相识的社会,突然一天如此接近。面对“金融风暴”带来的就业压力,我们正在逐渐走向成熟,我们意志更加坚强,我们深知不经一番寒彻骨,哪来梅花扑鼻香。深深地体会到找一份好工作多么不容易的,尤其是能力匮乏的我们。一切都要付出行动,不能空想,要实现目标,就得不懈的努力。 的确,软件仍然是一个朝阳行业,对于人才的需求量也很大,这也是为什

么很多人努力走上这座独木桥的原因。但是当你面临人生的一个选择时,当你决定要踏上软件开发之路时,你应该问一下自己:我为什么要选择它?其实很多人在这条道路上摸爬滚打了多年也没弄清楚这个问题的答案。如果你想在这条道路上有所成就的话,一是兴趣使然,二是做好自己的职业规划。软件开发其实是一条非常艰苦的路,不停的学习,不断的熬夜,没有鲜花更没有掌声,陪伴你的是那漫长而孤独的夜。想一想我们准备好迎接这一切了吗?如果没有兴趣我劝你还是放弃这条路,没有兴趣你就在这条路上走不长,等待你的只有转行。如果你真的把它作为你职业生涯的跳板,那么请你做好自己的人生规划,有步骤的实现它。话题稍微远了一点,现在我就谈谈自己在Java学习方面的心得和教训。 古人云:活到老,学到老。读书学习实乃艰苦之事,花费时间,消耗精力。 然苦之外亦见其乐:得到了知识,提高了认识,完善了自己。学习,求其真,务其实,应“敏而好学,不耻下问”,才能不断促使进步。学习,不仅求知,也要懂法,学会方法比掌握知识更加重要。笛卡尔说过,“没有正确的方法,即使有 眼睛的博学者也会像瞎子一样盲目摸索”,可见学习方法的重要性。 其实,大学之前几乎没有软件技术之类的概念,大三之前仍然对于程序 懵懂不开。但是这并不能妨碍我热爱这个行业,也不能就断定我

实验一java基础知识

实验一:java基础知识 实验目的: 1.掌握jave中变量的类型。 2.掌握常用的运算符 3.程序流程控制:顺序,选择和分支 实验内容: 1、回文数: 编写一个Java程序。用户从键盘输入一个1-9999之间的数,程序将判断这个数是几位数,并判断这个数是否回文数。回文数是指该数含有的数字逆序排列后得到的数和原数相同。 实验类别:验证性 2、猜数字游戏 编写一个Java应用程序,实现如下功能: 程序随机分配给客户一个1-100之间的整数 用户在输入对话框中输入自己的猜测 程序返回提示信息,提示信息分别是:“猜大了”、“猜小了”、和“猜对了”用户可以根据提示信息再次输入猜测,直到提示信息是“猜对了” 实验类别:设计性 3、输出希腊字母表 为了输出希腊字母表,首先获取希腊字母表的第一个字母和最后一个字母在unicode表中的位置,然后使用循环输出剩余的希腊字母 要观察一个字符在uniclde表中的顺序位置 实验类别:设计性

实验二类和对象 实验目的: 1.理解类的基本概念。 2.掌握如何定义类,定义类的成员变量和成员方法.创建和使用对象。 3.掌握定义重载方法和构造方法,方法参数的传递。 4. static变量和方法的使用。 实验内容: 1、定义一个名为Rectangle的类表示矩形,其中含有length,width两个double型 的成员变量表示矩形的长和宽。要求为每个变量定义访问方法和修改方法,定义求矩形周长的方法peremeter和求面积的方法area。定义一个带参数构造方法,通过给出的长和宽创建矩形对象。定义默认构造方法,在该方法中调用有参构造方法,将矩形长宽设置为1.0。 实验类别:验证性 2、方法重载: 编写一个Java程序,反映方法重载的使用特点,该程序包含多个重载的加法的运算,如整型加法,实型加法。 实验类别:验证性 3、学生类的创建: 1)创建一个student类,包括的域有学号、班号、姓名、性别、年龄等 2)声明一个构造方法,以初始化对象的所有域 3)声明分别获得各属性(学号、班号、姓名、性别、年龄)的各个public方法。4)声明修改各属性(学号、班号、姓名、性别、年龄)的各个public方法。5)创建一个具体学生对象,进行输出。 实验类别:设计性 4、定义一个类,类中有两个整型变量x和y,并定义构造函数初始化这两个变量。(通过构造函数传数据,数据值自定) 类中还可定义以下方法: 求两个数的和(x+y)并返回结果,求两个数的差(x-y)并返回结果,求两个数商(x/y)并返回结果,求两个数的余数(x%y)并返回结果,求两个数的最大值并返回结果。 编写应用程序,测试上面定义的类,使用类中定义的各个方法并将其结果输出。实验类别:验证性 5、用set()、get()方法传递数据: 本工程共有三个类,Person类、Employee类、和Test类,其中Test类 为测试类,其中有main()方法。 调用的是默认的构造方法,参数为空。 实验类别:设计性

java基础笔试测试题与答案

Java 一章至五章考试 一. 填空题(8 分) 1. 面向对象的三大原则是( 封装),( 继承) 和( 多态).2 分 2. 如果想在对象实例化的同时就初始化成员属性,则使用( 构造函数).2 分 3. ( 实体) 方法和( 构造) 方法不能修饰为abstract ?2分 二.选择题(60 分) 1) 在Java 语言中,下列(a,d )是不满足命名规范的变量名。(选择二项) a) 姓名 b) $Name c) _instanceof d) instanceof 2) 下列Java 代码片段的输出结果是( a ) 。 char c='a'; int i=c; float f=i; byte b=(byte)c; System.out.println(c+","+i+","+f+","+b); a) 编译错误 b) a,97,97,97 c) a,97,97.0,97 d) a,97,97.0f,97 3) 下列Java 代码中,空白处的代码是(b,c )。( 选择两项) public interface Fee{ public float calLabFee(float unitPrice, float time); } public class FeeImpl implements Fee { public float calLabFee(float unitPrice, float time){ return unitPrice * time; } } public class FeeInterfaceTest { public static void main(String[] args){ ________________ Float labFee = fee.calLabFee(400.00,5); } }

Java基础学习心得笔记

Java基础学习心得笔记 对于很多只会C语言的初学者而言,面对java基础语法学习,反而感觉很难,其实其中最大的问题不是语法难,而是一种编程思想的转变。面向过程就是把你的代码封装成函数,然后依次去做一件事情,面向过程是把你要做的事情抽象成对象,告诉对象去做。所以要想学好java入门,必须知道类和对象的概念。 类是对生活中事物的抽象描述,比如人类,动物类,交通工具类;对象即是对类的具体实例化,比如张三是人,猫是动物,飞机是交通工具(对象-----类)。Java基础入门学习路线可以总结为四步走: 1.java开发环境的搭建; 2.java初级之基础语法学习(80%类似C语言); 3.java中级之面向对象编程学习(重点); 4.java中级之应用编程学习。 第一步:JDK软件开发包时java软件开发环境, 包括jre运行环境和jvm虚拟机,在oricle官网下载javaSE版本JDK包;配置好环境变量就可以使用了。 第二步:java初级语法学习, 1.基本数据类型整形,字符型,字节型,长整形,短整形,浮点型,双精度,布尔型;

2.运算符+,-,*,/,%等; 3.控制流(while,switch,if else); 4.数组的定义方式。 此阶段基本无难度,只要了解练习例题。 第三步:java面向对象学习, 1.类和对象; 2.java语言三大特性,封装、继承、多态; 3.一些关键字学习(static,final,abstract,extends)等。 这是重点,大家根据知识点一步步研究学习才是关键。 第四步:java应用编程, 例如:文件IO,集合(类似C语言数据结构),异常处理,线程,网络,JDBC数据库操作等,都是掌握面向对象以后,在查找不同的类使用类中不同的方法达到应用的效果,所以并不会很难。等基础语法掌握了就可以继续后面框架学习(java web方向,android学习),相信明确思路你会豁然开朗,更有学习动力。 以上没有具体的实例和知识点讲解,分享的只是完全没接触过java的初学者自学java的思路和学习的流程,应该把握的重点,希望大家有所帮助。 如果你想学好Java,找一家靠谱的培训机构,能让你的学习事半功倍。

JAVA高级程序员考试题

JA V A高级程序员考试题 (总分:100分,考试时间:120分钟) 一、单项选择题(每题2分) 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 2.Java中不属于基础数据类型的是()。 A.byte B.char C.boolean D.String 3.Math.round(-11.5)等于多少()。 A.11 B.12 C.-11 D.-12 4.Java中调用()方法可以启动线程。 A.run() B.init() C.start() D.main() 5.下面哪种注释方法能够支持javadoc命令() A./**….**/ B./**/ C.// D.都不支持 6.执行如下程序代码: int a = 0; int c = 0; do { --c; a = a-1; } while (a > 0); 后,C的值是()。 A.0 B.1 C.-1 D.死循环 7.执行如下程序代码: String str = “abc”; int i = 3; float f = 4.5f; char ch = …a?; boolean b = true; System.out.println(str + i + f + ch + b); 输入值为()。 A.abc34.5fatrue B.abc34.5a1 C.abc34.5fa1 D.abc34.5atrue 8.执行如下程序代码: int denom = 0; int num = 0; if(denom != 0 && num/denom > 10){

System.out.println(“true”); }else{ System.out.println(“false”); } 以上代码将打印()。 A.true B.false C.先打印true,然后打印false D.编译有错 9.以下哪一行有错误()。 int a [][] = new int [4][]; a[0] = new int[5]; a[1] = new int[5]; int b [][] = new int [][4]; A.第1行B.第2行C.第3行D.第4行 10.int [][] a = new int [3][5]; 请问: a.length = ? a[1].length = ? A.5,3 B.3,5 C.3,3 D.5,3 二、多项选择题(每题3分) 11.XML有()解析方式。 A.DOM B.SAX C.STAX D.FACTORY 12.下列哪些继承Collection接口()。 A.List B.Map C.Set D.Date 13.不能用来修饰interface的有()。 A.private B.public C.protected D.static 14.Java中switch关键字能作用于()数据类型。 A.int B.char C.String D.byte 15.关于Servlet说法正确的是()。 A.Servlet被实例化后,容器运行其init方法 B.Servlet被实例化后,容器运行其service方法 C.服务器销毁实例时运行destory方法 D.Servlet中有get和post两种提交方式 16.关于EJB说法正确的是()。 A.EJB包括了Session Bean、Entity Bean、Message Driven Bean B.EJB基于JNDI、RMI、JA T等技术实现 C.EJB可以部署到tomcat、jboss、weblogic等应用服务器 D.EJB一般应用于企业级的应用

java基础练习题

1) 以下关于Java语言说法错误的是()。(选择两项) a) Java语言是一种OO语言,Java API是Java语言的帮助文档 b) Java语言具有平台无关性-Write Once,Run Anywhere c) Java语言的核心是Java Virtual Machine d) 使用Java语言,程序员要使用原始方法分配和释放内存空间 e) Java语言是一种编译执行语言 知识点: 第一章Java语言基础Java语言基本概念 2) 以下哪一项不是Java的关键字(b)。(选择一项) a) if b) then c) goto d) case e) while 知识点: 第二章Java编程基础Java中的关键字 3) 下列(a,e)不是合法的Java语言标识符。(选择两项) a) 2variable b) variable2 c) _whatavariable d) $anothervar e) #myvar f) _3_ 知识点: 第二章Java编程基础Java中的标识符 4) 执行下列代码段后,变量x的值是(c)。(选择一项) x=9; y=9; x=(y<=x++)?1:0; a) 1 b) 2 c) 0 d) 10 知识点: 第二章Java编程基础三元运算符 5) System.out.println(4 | 7);上面语句的输出结果是(d)。(选择一项) a) 4 b) 5 c) 6 d) 7 e) 0 知识点: 第二章Java编程基础位运算符 6) 以下会产生编译错误的Java语句是(b)。(选择一项) a) if (2 == 3) System.out.println("Hi"); b) if (2 = 3) System.out.println("Hi");

java基础学习心得

java基础学习心得 目录 第一篇:java学习需要什么基础 第二篇:java 基础要点总结学习java必看 第三篇:java学习心得笔记 第四篇:java学习心得 第五篇:关于java学习的一点心得体会 正文 第一篇:java学习需要什么基础 java学习需要什么基础 随着java这种语言的广泛运用,越来越多从事开发的人员开始学习接触这门课程,那么,java学习需要什么基础?java刚刚入门应该接触哪些知识呢?java入门应该学习什么内容呢? 首先要说明的,java有三个大的方向(j2se,j2me,j2ee),走不同的方向可能学的技术和要花费的时间可能有所不同。我是搞web方向的(j2ee),我学java除了以前一些简单的c语言语法外,没有太多的编程基础,我以前一直认为编程要有很强的数学和英语功底,现在看来这也不是必需,只要有一定的逻辑思维能力和掌握一些常见的计算机词汇,还需要具备一定的自学能力,因为软件开发工作是需要不断学习的。

其次,我想说下我的学习过程,我在网上下载了java教学视频,将java基础从头到尾看了一遍,将上面的代码基本上跟着敲了一遍,然后我把java基础的书看了一遍,一本书看完包括上面的习题大概做一遍差不多一个月。这时你对java的语法和基本知识应该都有比较充分的认识和了解了。 然后,再做一些小项目,跟着视频上的步骤做,最好能自己独立再写写,能写多少是多少。一般网上比较新的免费的项目库很不好找,因为项目库是需要实时更新以保证适合市场需要的,而它的升级和更新是需要钱的,所以去报一个培训中心利用它强大的项目库进行实战操作是个很好的选择。 操作一段时间之后,你对java已经有了一定的感觉,就要开始选择你的发展方向了。我选择了j2ee,如果你也是想走这条路,你可以接着看关于j2ee的视频,先是html+js+css,然后jsp+serverlet,再看struts+spring+hibernate等一些框架。同时可以看一些大的培训机构的关于设计模式的视频,最好是it牛人录制的,当然数据库也得学下,然后加上做项目的经验累积,半年就差不多可以出去工作了。 如果你做其他方向的话我不是很了解。再说下我个人的看法, j2me和j2se好像前景没j2ee好,不过我有同事是做android平台开发的,这个不需要j2ee的知识,你可以去买本android的看看,这个方向貌似很有前途,你应该也常听说android平台的手机,如果走这方向可

JAVA实验报告一

Java语言程序设计实验报告一 班级:姓名:学号: 一、实验教学目的与基本要求 Java程序设计的实验是Java程序设计课程重要的实践教学环节。实验的目的不仅仅是验证理论知识,更重要的是通过上机加强学生的动手能力,掌握常用Java开发环境的使用方法,培养学生分析问题、解决问题、应用知识的能力和创新精神。充分放手让学生自行设计、自主调试,真正培养学生的实践动手能力,全面提高学生的综合素质。 本课程是一门程序设计语言课程,通过本课程的学习,学生能够掌握Java 语言程序的基本特点、基本编程方法和基本开发技巧,培养学生阅读、分析、设计和调试Java语言的能力,并具备一定的面向对象程序设计思想。 本课程的主要任务是在已学习的编程语言基础上,讲述Java语言的数据结构和语法规则;基本控制结构和编程技巧;Java语言面向对象的特点、编程方法和程序设计思路;Java语言的GUI程序和文件及I/O流的编程方法;能够正确配置Java开发环境,并使用相关的编辑、编译、调试、运行命令。 (1)掌握Java语言的编程技巧,能够独立进行面向对象的开发能力。 (2)具有根据编程需求独立查询Java类库文档及相关资料,完成系统的能力。 (3)具有分析、寻找和排除程序中常见问题的能力。

二、实验内容与收获 (1)Java的安装与配置。熟悉语言环境及简单程序设计的使用练习,正确配置Java 开发环境(Eclipse 集成开发环境的安装、配置与使用) a)安装JDK Sun公司为所有的Java程序员提供了一套免费的Java开发和运行环境。 可以通过IE或Netscape浏览器浏览网址:https://www.wendangku.net/doc/c712673146.html,/j2se,根据提示可以下载支持Microsoft Windows操作系统的jdk-1_5_0-windows-i586.exe到本地硬盘。 安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到D:\jdk1.5.0目录下,如图1-2。正确安装后,在JDK目录下有bin、demo、lib、jre等子目录,如图1-3,其中bin目录保存了javac、java、appletviewer等命令文件,demo目录保存了许多java的例子,lib目录保存了Java的类库文件,jre目录保存的是Java的运行时环境(JRE)。 图1-2

java基础测试题及答案

一、选择题(每题2分,共40分) 1、下面哪个是Java语言中正确的标识符( C ) A、3com B、import C、that D、this 2、下面哪个语句(初始化数组)是不正确的:( B) A.int x[] = {1,2,3}; B.int x[3] = {1,2,3}; C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3}; 3、下述概念中不属于面向对象方法的是( D )。 A.对象、消息 B.继承、多态 C.类、封装 D.过程调用 4、下面的代码段中,执行之后i 和j 的值是什么 ( B ) int i = 1; int j; j = i++*2+3*--i; A.1, 2 B.1, 5 C. 2, 1 D. 2, 2 5、下面哪条语句把方法声明为抽象的公共方法( B ) A.public abstract method(); B.public abstract void method(); C.public abstract void method(){} D.public void method() extends abstract; 6、下面关于java中类的说法哪个是不正确的( C ) A.类体中只能有变量定义和成员方法的定义,不能有其他语句。 B.构造函数是类中的特殊方法。 C.类一定要声明为public的,才可以执行。 D.一个java文件中可以有多个class定义。 7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的( C ) class A { int i; static String s; void method1() { } static void method2() { } } A、; B、(); C、(); D、() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小 的变化而改变 ( B ) A、 CardLayout B、 FlowLayout C、 BorderLayout D、 GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的 ( C ) A.滑块 B.进度条 C.按钮 D.标签

JAVA基础学习心得

java基础学习心得 第一篇:java学习需要什么基础第二篇:java 基础要点总结学习java必看第三篇:java学习心得笔记第四篇:java学习心得第五篇:关于java学习的一点心得体会更多相关范文 java学习需要什么基础 随着java这种语言的广泛运用,越来越多从事开发的人员开始学习接触这门课程,那么,java学习需要什么基础?java刚刚入门应该接触哪些知识呢?java入门应该学习什么内容呢? 首先要说明的,java有三个大的方向(j2se,j2me,j2ee),走不同的方向可能学的技术和要花费的时间可能有所不同。我是搞web方向的(j2ee),我学java除了以前一些简单的c语言语法外,没有太多的编程基础,我以前一直认为编程要有很强的数学和英语功底,现在看来这也不是必需,只要有一定的逻辑思维能力和掌握一些常见的计算机词汇,还需要具备一定的自学能力,因为软件开发工作是需要不断学习的。 其次,我想说下我的学习过程,我在网上下载了java教学视频,将java基础从头到尾看了一遍,将上面的代码基本上跟着敲了一遍,然后我把java基础的书看了一遍,一本书看完包括上面的习题大概做一遍差不多一个月。这时你对java的语法和基本知识应该都有比较充分的认识和了解了。 然后,再做一些小项目,跟着视频上的步骤做,最好能自己独立再写写,能写多少是多少。一般网上比较新的的项目库很不好找,因

为项目库是需要实时更新以保证适合市场需要的,而它的升级和更新是需要钱的,所以去报一个培训中心利用它强大的项目库进行实战操作是个很好的选择。 操作一段时间之后,你对java已经有了一定的感觉,就要开始选择你的发展方向了。我选择了j2ee,如果你也是想走这条路,你可以接着看关于j2ee的视频,先是html+js+css,然后jsp+serverlet,再看struts+spring+hibernate等一些框架。同时可以看一些大的培训机构的关于设计模式的视频,最好是it牛人录制的,当然数据库也得学下,然后加上做项目的经验累积,半年就差不多可以出去工作了。 如果你做其他方向的话我不是很了解。再说下我个人的看法,j2me 和j2se好像前景没j2ee好,不过我有同事是做android平台开发的,这个不需要j2ee的知识,你可以去买本android的看看,这个方向貌似很有前途,你应该也常听说android平台的手机,如果走这方向可以再学一下linux知识和c的知识,因为这个平台底层是这些,这也不是必要。 说了这么多希望对大家能有所帮助。最后再说一句,学东西,最重要的是动手,只有动手做了才能深深的理解,牢牢的记住。 java基础 1.java程序是由1个或者n个class组成的程序 2.编写---javac进行编译------java进行执行

实验5Java常用类(一)

实验5 Java类库和常用类(一) 一. 实验目的及实验环境 1理解类库的概念,掌握分析、应用类库中的类的方法。 2熟练掌握Math类的常用方法。熟悉Random类的常用方法。 3理解String类的特性,熟练掌握String类的常用方法。 4能用Date类创建对象,熟练掌握Date类的常用方法。 5熟练掌握SimpleDateFormat解析日期和设置日期输出格式。 6学会查阅Java API在线参考文档和离线文档的方法。 二. 实验内容 1 基本内容(实验前请及时熟悉如下相关内容) 1)练习使用Math类的常用方法。 2)应用String类编程练习。 3)编写程序应用Random类生成随机数。 4)练习使用Date类的常用方法。 5)查阅Java API在线参考文档和下载Java API离线文档。 示例1. 应用SimpleDateFormat类的程序示例如下,共同学们模仿参考。 import java.text.*; import java.util.Date; public class FormatDateTime { public static void main(String[] args) { SimpleDateFormat myFmt = new SimpleDateFormat("yyyy年MM月dd日 HH 时mm分ss秒"); SimpleDateFormat myFmt1 = new SimpleDateFormat("yy/MM/dd HH:mm"); SimpleDateFormat myFmt2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 等价于now.toLocaleString() SimpleDateFormat myFmt3 = new SimpleDateFormat("yyyy年MM月dd日 HH 时mm分ss秒 E "); SimpleDateFormat myFmt4 = new SimpleDateFormat("一年中的第 D 天一年中第w个星期一月中第W个星期在一天中k时 z时区"); Date now = new Date();//当前时间 System.out.println(myFmt.format(now)); System.out.println(myFmt1.format(now)); System.out.println(myFmt2.format(now)); System.out.println(myFmt3.format(now)); System.out.println(myFmt4.format(now)); System.out.println(now.toGMTString());//The method toGMTString() from the type Date is deprecated. System.out.println(now.toLocaleString()); System.out.println(now.toString()); } }

Java高级编程选择题

1.Thread类用来创建和控制线程,一个线程从下面( )方法开始执行。 A.init() B.start() C.run() D.notifyAll() 2.实现线程体的方式除了继承Thread类,还可以实现( )接口。 A.Cloneable B.Runnable C.Iterable D.Serializable 3.哪个方法是实现Runnable接口所需的 A.wait() B.run() C.stop() D.update() 4.下面让线程休眠1分钟的正确方法是() A.sleep(1) B.sleep(60) C.sleep(1000) D.sleep(60000) 5.以下哪个最准确描述synchronized关键字 A.允许两线程并行运行,而且互相通信; B.保证在某时刻只有一个线程可访问方法或对象; C.保证允许两个或更多处理同时开始和结束; D.保证两个或更多线程同时开始和结束。 6.于Java语言的内存回收机制,下列选项中最正确的一项是( )。 A.Java程序要求用户必须手工创建一个线程来释放内存 B.Java程序允许用户使用指针来释放内存 C.内存回收线程负责释放无用内存 D.内存回收线程不能释放内存对象 7.在java程序中,下列关于线程的说法错误的是: ( ) A.run方法是运行线程的主体 B.多个进程运行时执行顺序是按顺序执行的 C.如果线程死亡,它便不能运行 D.在java中,高优先级的可运行线程会抢占低优先级线程 8.编写线程类,要继承的父类是: A.Object

B.Runnable C.Exception D.Thread 9.启动一个线程的方法是哪项 A . join ( ) B . runf ) C . start ( ) D . sleep ( ) 10.编写线程类,可以通过实现那个接口来实现 A.Runnable B.Throwable C.Serializable https://www.wendangku.net/doc/c712673146.html,parable 11.当一个处于阻塞状态的线程解除阻塞后,它将回到哪个状态 A.运行中状态 B.结束状态 C.新建状态 D.可运行状态 12.在网络编程中,为了定位一个进程,我们需要确定() A.端口号 B.IP地址 C.IP地址和端口号 D.都不是 13.为了从文本文件中逐行读取内容,应该使用哪个处理流对象 A.BufferedReader B.BufferedWriter C.Bufferedlnputstream D.Bufferedoutputstream 14.要使用java程序访问数据库,则必须首先与数据库建立连接,在建立连接 前,应加载数据库驱动程序,该语句为() A.(“ rs= (“”,””,””).createStatement() B.Statement st= (“”,””,””).createStaement() 15.要使用java程序访问数据库,则必须首先与数据库建立连接,该语句为() A.(“ rs= (“”,””,””).createStatement() B.Statement st= (“”,””,””).createStaement() 16.Java程序与数据库连接后,需要查看某个表中的数据,使用下列哪个语句

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java" 中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量 c 的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main 方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

相关文档