java基础50道经典练习题及答案

java基础50道经典练习题及答案
java基础50道经典练习题及答案

沃克IT教育JAVA基础编程练习题

整理:Lemon 【程序1】

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?

【程序2】

题目:判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,

【程序3】

题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

【程序4】

题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:

(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。

【程序5】

题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

【程序6】

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。

【程序7】

题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

【程序8】

题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

【程序9】

题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的

【程序10】

题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,

【程序11】

题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排

【程序12】

题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万

之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?

【程序13】

题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结

【程序14】

题目:输入某年某月某日,判断这一天是这一年的第几天?

程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,

【程序15】

题目:输入三个整数x,y,z,请把这三个数由小到大输出。

程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。

【程序16】

题目:输出9*9口诀。

程序分析:分行与列考虑,共9行9列,i控制行,j控制列。

【程序17】

题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

【程序18】

题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。

【程序19】

题目:打印出如下图案(菱形)

*

***

******

********

******

***

*

程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层

【程序20】

题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

【程序21】

题目:求1+2!+3!+...+20!的和

【程序22】

题目:利用递归方法求5!。

【程序23】

题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁

【程序24】

【程序25】

Java编程基础知识点汇总及习题集答案

J a v a编程基础知识点汇总及习题集答案 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (14) 第四章循环语句 (20) 第五章方法 (26) 第六章数组 (33) 第七章面向对象 (42) 第八章异常 (63) 第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心的部分,包含Java 最核心的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、Web Service等。 Java ME:(J2ME,Java 2

Platform Micro Edition,微型版),用于小型电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 path环境变量:存放可执行文件的存放路径,路径之间 用逗号隔开 classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class); :Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class) 5、一切程序运行的入口public static void main (String args []){ World!”); } 课堂笔记

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基础测试题

一、选择题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 程序设计》课程试卷 1.使用 Java 语言编写的源程序保存时的文件扩展名是( )。 (A ) .class ( B ) .java C ) .cpp ( D ) .txt 2.设 int a=-2 ,则表达式 a>>>3 的值为( )。 (A ) 0 (B )3 (C ) 8 (D )-1 3.设有数组的定义 int[] a = new int[3] ,则下面对数组元素的引用错误的是( ) ( A )a[0]; ( B ) a[a.length-1]; (C )a[3]; (D )int i=1 ; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( )。 (A )封装 (B )继承 (C )覆盖 (D )重载 5.在类的定义中构造函数的作用是( )。 (A )保护成员变量 (B )读取类的成员变量 (C )描述类的特征 (D )初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( )。 ( A ) try ( B ) break ( C ) catch ( D ) finally 7.类与对象的关系是( )。 (A )类是对象的抽象 (B )对象是类的抽象 15. Java 语言使用的字符码集是 (A) ASCII (B) BCD (C) DCB 16. 如果一个类的成员变量 (A) public (B) (C 对象是类的子类 (D )类是对象的具体实例 )。 8.下面哪一个是 Java 中不合法的标识符( ( A )$persons ( B ) twoNum ( C )_myVar ( D )*point 9.为 AB 类的一个无形式参数无返回值的方法 ( ) 。 ( A ) static void method( ) ( B ) public void method( ) ( C ) final void method( ) ( D ) abstract void method( ) 10.欲构造 ArrayList 类的一个实例,此类继承了 ( A ) ArrayList myList=new Object( ) ( B ) List myList=new ArrayList( ) ( C ) ArrayList myList=new List( ) ( D ) List myList=new List( ) 11. Java 源文件和编译后的文件扩展名分别为( (A) .class 和 .java (C).class 和 .class 12. 在 Java Applet 程序用户自定义的 (A) start( ) (B) stop( ) (C) init( ) 13. 对于一个 Java 源文件, (A) package,import,class (C) import,package,class 14. 下面哪个是非法的: (A) int I = 32; (C) double d = 45.0; method 书写方法头,使得使用类名 List 接口,下列哪个方法是正确的( ) ( B).java 和 .class (D) .java 和 .java Applet 子类中,一般需要重载父类的 (D) paint( ) import, class (B) class,import,package (D) package,class,import ( ) 定义以及 package 正确的顺序是: (B) float f = 45.0; (D) char c = // 符号错 AB 作为前缀就可以调用它,该方法头的形式为 方法来完成一些画图操作。 (D) Unicode 只能 在所在类中使用 则该成员变量必须使用的修饰是

Java基础试题及其答案

Java试题 1) java程序中,main方法的格式正确的是()。(选择一项) a)static void main(String[] args) b)public void main(String[] args) c)public static void main(String[]s) d)public static void main(String[] args) 2)给定java代码,如下: public byte count(byte b1,byte b2){ return______; } 要使用这段代码能够编译成功,横线处可以填入()。(选择一项)a)(byte) (b1-b2) b)(byte) b1-b2 c) b1-b2 d) (byte) b1/b2 3)在Java中,在包下定义一个类,要让包下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。 (选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; “”+new Person() toString() c) int a= 3+5 d) float f=5+; double float 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; (“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 已到文件尾,再读取抛出 7) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList List 有序可重复 b) HashSet Set 无序不可重复同一对象是重复 的 c) HashMap Map(key/value)重复定义:hashCode、 equals(业务) d) LinkedList List 8)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public static void main(String args[]){ int a=5;

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) 运行时出现异常

JAVA入门练习50题(含答案)

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } }

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测试题(三套含答案)

<测试一> 1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=1.3; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4.编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; System.out.println("The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F A.2variable B.variable2 C. _whatavariable

D. _3_ E. $anothervar F. #myvar 6.内部数据类型byte的取值范围是B A.0 - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: System.out.println("zero"); break; case 1: System.out.println("one"); case 2: System.out.println("two"); default: System.out.println("default"); } A.one B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default:

JAVA试题及答案

JA V A语言基础内部测试题 选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。)(每题2分) 没有注明选择几项的,只选择一项 1、JAVA所定义的版本中不包括:() A、JAVA2 EE B、JAVA2 Card C、JAVA2 ME D、JAVA2 HE E、JAVA2 SE 2、下列说法正确的是() A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来 3、Java中,在如下所示的Test类中,共有()个构造方法。 public class Test{ private int x; public Test(){ x=35; } public void Test(double f){ =(int)f; } public Test(String s){} } A、0 B、 1 C、 2 D、3 4、变量命名规范说法正确的是() A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字; 5、下列javaDoc注释正确的是() A、/*我爱北京天安门*/

B、quals("john") C、"john" = "john" D、"john".equals(new String("john")) 6、下列输出结果是() int a = 0 ; while ( a < 5 ) { switch(a){ case 0: case 3 : a = a + 2; case 1 : case 2 : a = a + 3; default : a = a + 5; } } ( a ) ; A、0 B、5 C、10 D、其他 7、下列代码输出结果是( ) int i = 10; while ( i > 0 ){ i = i + 1; if ( i = =10 ){ break; } } A.while循环执行10次 B.死循环 C.循环一次都不执行 D.循环执行一次 8、下面有关for循环的描述正确的是() A、for循环体语句中,可以包含多条语句,但要用大括号括起来 B、for循环只能用于循环次数已经确定的情况 C、在for循环中,不能使用break语句跳出循环 D、for循环是先执行循环体语句,后进行条件判断 9、下列()属于引用数据类型(选择两项) A、String B、char C、用户自定义的Student类类型

2019最新Java面试题,常见面试题及答案汇总

ava最新常见面试题+ 答案汇总 1、面试题模块汇总 面试题包括以下十九个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 。如下图所示: 可能对于初学者不需要后面的框架和JVM 模块的知识,读者朋友们可根据自己的情况,选择对应的模块进行阅读。 适宜阅读人群 需要面试的初/中/高级java 程序员 想要查漏补缺的人 想要不断完善和扩充自己java 技术栈的人 java 面试官 具体面试题 下面一起来看208 道面试题,具体的内容。 一、Java 基础 1.JDK 和JRE 有什么区别? 2.== 和equals 的区别是什么? 3.两个对象的hashCode()相同,则equals()也一定为true,对吗? 4.final 在java 中有什么作用? 5.java 中的Math.round(-1.5) 等于多少? 6.String 属于基础的数据类型吗? 7.java 中操作字符串都有哪些类?它们之间有什么区别? 8.String str="i"与String str=new String(“i”)一样吗? 9.如何将字符串反转? 10.String 类的常用方法都有那些? 11.抽象类必须要有抽象方法吗? 12.普通类和抽象类有哪些区别? 13.抽象类能使用final 修饰吗?

14.接口和抽象类有什么区别? 15.java 中IO 流分为几种? 16.BIO、NIO、AIO 有什么区别? 17.Files的常用方法都有哪些? 二、容器 18.java 容器都有哪些? 19.Collection 和Collections 有什么区别? 20.List、Set、Map 之间的区别是什么? 21.HashMap 和Hashtable 有什么区别? 22.如何决定使用HashMap 还是TreeMap? 23.说一下HashMap 的实现原理? 24.说一下HashSet 的实现原理? 25.ArrayList 和LinkedList 的区别是什么? 26.如何实现数组和List 之间的转换? 27.ArrayList 和Vector 的区别是什么? 28.Array 和ArrayList 有何区别? 29.在Queue 中poll()和remove()有什么区别? 30.哪些集合类是线程安全的? 31.迭代器Iterator 是什么? 32.Iterator 怎么使用?有什么特点? 33.Iterator 和ListIterator 有什么区别? 34.怎么确保一个集合不能被修改?

Java程序设计试题及答案

一、判断题。判断下列各题是否正确,若正确,在()内打“√”,否则打“×”。 1、Java语言具有较好的安全性和可移植性及与平台无关等特性。√ 2、Java语言的源程序不是编译型的,而是编译解释型的。√ 3、Java语言使用的是Unicode字符集,每个字符在内存中占8位。× 4、Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。√ 6、一个类可以实现多个接口,接口可以实现“多重继承”。√ 7、实现接口的类不能是抽象类。× 二、不定项选择题。 1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。 A、java B、class C、html D、exe 2、main方法是Java Application程序执行的入口点,关于main方法的方法首部,以下(B)项是合法的。 A、public static void main() B、public static void main(String args[]) C、public static int main(String[] arg) D、public void main(String arg[]) 3、关于下面代码的说法(C)是正确的 public class Example{ public static void main(String[] args){ int[] arr= new int[10]; } } A、编译时产生错误 B、编译时正确,运行时将产生错误 C、输出零 D、输出空(null) 4、不正确的表达式是(AB)。 A、float a=; B、Double a=new Double C、byte a = (byte)340; D、Byte a = 120; 5、定义一个类名为""的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为( CD)。 A、private class MyClass extends Object B、class MyClass extends Object C、public class MyClass D、public class MyClass extends Object 6、下列构造方法的调用方式中,正确的是(C)。 A、按照一般方法调用 B、由用户直接调用

Java基础测试题

Ps:答案已写在上面。希望大家把其他错误选项问题找出来. 第一组: 1.下面哪些是合法的变量名 (DEG) A.2variable .variable2 ._whatavariable $_¥ 2.请问“abcd” instanceof Object返回的值是 (B) A. “abcd” B. true C. false D. String 前面是后面的子类 面说法正确的是:(A) A. 如果源代码中有package语句,则该语句必须放在代码的第一行(不考虑注释和空格); B. 如果源代码中有import语句,则该语句必须放在在代码的第一行(不考虑注释和空格)如果源代码中有main()方法,则该方法必须被放在代码的第一行如果某文件的源代码中定义了一个public 的接口,接口名和文件名可以不同。 4.下面有关方法覆盖说法不正确的是:(B) A. 方法覆盖要求覆盖和被覆盖的方法有相同的名字,参数列以及返

回值 B. 方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限; C. 覆盖的方法不能比被覆盖的方法抛出更多的异常 D. 覆盖的方法一定不能是private的 5.一个Java程序运行从上到下的环境次序是(C) A. 操作系统、Java程序、JRE/JVM、硬件 B. JRE/JVM、Java程序、硬件、操作系统 C. Java程序、JRE/JVM、操作系统、硬件 D. Java程序、操作系统、JRE/JVM、硬件 6. 下面选项中哪个关键字可以用来修饰接口中的变量和方法(A) A. static B. private C. synchronized D. protected 7. 下面代码段中:(A) String String=”String”; String B. 不知道 C. 编译出错 D. 运行出错 8. 下面哪种是正确的创建Map集合的方式:(D) A. Map m=new Map();

Java试题及答案

1、在中如果声明一个类为,表示什么意思? 答:是最终的意思,可用于定义变量、方法和类但含义不同,声明为的类不能被继承。 2、父类的构造方法是否可以被子类覆盖(重写)? 答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。 3、请讲述和的区别。 答:类所定义的对象是用于存放“长度固定”的字符串。 类所定义的对象是用于存放“长度可变动”的字符串。

4、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢? 答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。 5、结合视频5(多线程),分析()和()方法的区别。 答:睡眠的意思 : () 方法用来暂时中止执行的线程。在睡眠后,线程将进入就绪状态。 等待的意思: 如果调用了 () 方法,线程将处于等待状态。 用于在两个或多个线程并发运行时。 6、谈谈你对抽象类和接口的理解。 答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。 他使用来继承。 接口:一个接口允许一个类从几个接口继承而来,程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。其实现方式是来实现。 7. 的接口和的虚类的相同和不同处。 由于不支持多继承,而有可能某个类或对象要使用分别在几

个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是,所有方法默认情况下是.一个类可以实现多个接口。 8. 垃圾回收的优点和原理。并考虑2种回收机制。 语言中一个显著的特点就是引入了垃圾回收机制,使程序员最头疼的内存管理的问题迎刃而解,它使得程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 9.谈谈,,的区别。 -修饰符(关键字)如果一个类被声明为,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为的,又被声明为的。将变量或方法声明为,可以保证它们在使用中不被改变。被声明为的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为的方法也同样只

最新Java基础试题及其答案

Java试题 一单项选择 1)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。() a)protected b)private c)public d)friendly 2)在Java中,下列()语句不能通过编译。(选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; c) int a= 3+5 d) float f=5+5.5; 3)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; s.concat(“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 4) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList b) HashSet c) HashMap d) LinkedList 5)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public staticvoid main(String args[]){ int a=5; System.out.println(a%2==1) ?(a+1) /2:a/2) ; } } (选择一项) a)1 b)2 c)2.5 d)3 6)以下Java语句中,String str = “123456789”;str =str.subString(1,3);执行后str中的值为。(选择一项) a) “23” b)“123”

java基础面试全集

Java面试题大全 2013年年底的时候,我看到了网上流传的一个叫做《Java面试题大全》的东西,认真的阅读了以后发现里面的很多题目是重复且没有价值的题目,还有不少的参考答案也是错误的,于是我花了半个月时间对这个所谓的《Java面试大全》进行了全面的修订并重新发布在我的CSDN博客。在修订的过程中,参照了当时JDK最新版本(Java 7)给出了题目的答案和相关代码,去掉了EJB 2.x、JSF等无用内容或过时内容,补充了数据结构和算法、大型网站技术架构、设计模式、UML、spring MVC等内容并对很多知识点进行了深入的剖析,例如hashCode方法的设计、垃圾收集、并发编程、数据库事务等。当时我甚至希望把面试中经常出现的操作系统、数据库、软件测试等内容也补充进去,但是由于各种原因,最终只整理出了150道面试题。让我欣慰的是,这150道题还是帮助到了很多人,而且在我CSDN 博客上的总访问量超过了5万次,最终还被很多网站和个人以原创的方式转载了。最近一年内,用百度搜索”Java面试”我写的这些东西基本上都排在搜索结果的前5名,这让我觉得”亚历山大”,因为我写的这些东西一旦不准确就可能误导很多人。2014年的时候我又整理了30道题,希望把之前遗漏的面试题和知识点补充上去,但是仍然感觉挂一漏万,而且Java 8问世后很多新的东西又需要去总结和整理。为此,我不止一次的修改了之前的180题,修改到自己已经感觉有些疲惫或者厌烦了。2014年至今,自己带的学生又有很多走上了Java程序员、Java工程师的工作岗位,他们的面试经验也还没来得及跟大家分享,冥冥之中似乎有一股力量在刺激我要重新写一篇《Java面试题全集》,于是这篇文章就诞生了。请不要责备我把那些出现过的内容又写了一次,因为每次写东西就算是重复的内容,我也需要对编程语言和相关技术进行重新思考,不仅字斟句酌更是力求至臻完美,所以请相

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试题及答案(精致),DOC

选择题 1、JAVA所定义的版本中不包括:( D ) A、JAVA2EE B、JAVA2Card C、JAVA2ME D、J AVA2HE E、J AVA2SE 2、下列说法正确的就是( A ) A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、J AVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起 来 3、变量命名规范说法正确的就是( B ) A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A与a在java中就是同一个变量; D、不同类型的变量,可以起相同的名字; 4、下列javaDoc注释正确的就是( C ) A、/*我爱北京天安门*/ B、//我爱北京天安门*/

C、/**我爱北京天安门*/ D、/*我爱北京天安门**/ 5、为一个boolean类型变量赋值时,可以使用( B )方式 A、boolean=1; B、booleana=(9>=10); C、booleana="真"; D、b ooleana==false; 6、以下( C )不就是合法的标识符 A、STRING B、x3x; C、void D、d e$f 7、表达式(11+3*8)/4%3的值就是( D ) A、31 B、0 C、1 D、2 8、( A )表达式不可以作为循环条件 A、i++; B、i>5; C、bEqual=str、equals("q"); D、c ount==i;

9、运算符优先级别排序正确的就是(A ) A、由高向低分别就是:()、!、算术运算符、关系运算符、逻辑运算符、 赋值运算符; B、由高向低分别就是:()、关系运算符、算术运算符、赋值运算符、!、 逻辑运算符; C、由高向低分别就是:()、算术运算符、逻辑运算符、关系运算符、!、 赋值运算符; D、由高向低分别就是:()、!、关系运算符、赋值运算符、算术运算符、 逻辑运算符; 10、以下程序的运行结果就是:( B ) publicclassIncrement{ publicstaticvoidmain(Stringargs[]){ inta; a=6; } } A.666 B.667 C.677 D.676 11、下列值不为true的表达式有( C )。 A、"john"=="john" B、"john"、equals("john") C、"john"="john" D、"john"、equals(newString("john")) 12、下列输出结果就是( C ) inta=0; while(a<5){

相关文档
最新文档