java编程题目及答案

合集下载

JAVA编程题全集(100题及答案)

JAVA编程题全集(100题及答案)

Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。

(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。

// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))年是闰年。

");else年不是闰年。

");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。

(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;}“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型); // 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。

JAVA编程习题及答案_完全版

JAVA编程习题及答案_完全版

1.test10001显示短句//程序填空.//在屏幕上显示一个短句“Programming in Java is fun!”import java.io.*;public class Test10001{public static void main(String args[]){/*------------------------*/System.out.println("Programming in Java is fun!");}}2.test10002显示网格/*程序填空。

在屏幕上显示如下网格。

+---+---+| | || | |+---+---+*/import java.io.*;public class Test10002{public static void main(String args[]){/*------------------------*/System.out.println("+---+---+");System.out.println("| | |");System.out.println("| | |");System.out.println("+---+---+");}}3.test10095显示hello world!import java.io.*;public class Test10095{public static void main(String args[]){/*---------------------------*/System.out.println("Hello world!");}}4.test10097求两个数的和/*输入n表示做n次下面的操作:输入两个正整数,输出它们的和.例:输入:2 //表示n=2,做两次操作10 1120 30输出:sum=21sum=50*/import java.util.Scanner;public class Test10097{public static void main(String args[]){int n,a,b,i,sum;Scanner in=new Scanner(System.in);n=in.nextInt(); //输入nfor(i=1; i<=n; i++){/*------------*/a=in.nextInt();b=in.nextInt();sum=a+b;System.out.println("sum="+sum);}}}5.test20001求两个数的和与差/*程序填空,不要改变与输入输出有关的语句。

java基础试题及答案

java基础试题及答案

java基础试题及答案一、选择题(每题2分,共20分)1. Java中,以下哪个关键字用于定义一个类?A. classB. interfaceC. structD. enum答案:A2. 下列哪个选项是Java中的基本数据类型?A. StringB. intC. ArrayListD. Object答案:B3. 在Java中,哪个修饰符用于声明一个成员变量为类的私有成员?A. privateB. publicC. protectedD. static答案:A4. Java中,哪个关键字用于捕获异常?A. tryB. catchC. finallyD. throw答案:B5. 在Java中,哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. enum答案:B6. 下列哪个选项是Java集合框架中的一部分?A. StringB. ArrayListC. FileD. Thread答案:B7. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. defD. void答案:D8. Java中,哪个关键字用于定义一个抽象方法?A. abstractB. finalC. staticD. native答案:A9. 在Java中,哪个关键字用于定义一个内部类?A. innerB. nestedC. innerclassD. class答案:D10. Java中,哪个关键字用于定义一个静态方法?A. staticB. dynamicC. finalD. abstract答案:A二、填空题(每题3分,共15分)1. Java中,用于定义一个类的关键字是______。

答案:class2. Java程序的入口点是______方法。

答案:main3. 在Java中,______关键字用于声明一个变量为常量。

答案:final4. Java中,______关键字用于定义一个方法为静态的。

竞赛java编程题50题(有答案)

竞赛java编程题50题(有答案)

竞赛java编程题50题(有答案)【程序1】题目:经典问题:有一对兔子。

从出生后的第三个月开始,他们每个月生一对兔子。

当小兔子长到第三个月时,它们每个月都会产下另一对兔子。

如果兔子没有死,每个月的兔子总数是多少//这是一个斐波拉契序列问题publicclasslianxi01{publicstaticvoidmain(字符串[]args){system.out.println(\第1个月的兔子对数:1\system.out.println(\第2个月的兔子对数:1\intf1=1,f2=1,f,m=24;for(inti=3;i<=m;i++){f=f2;f2=f1+f2;f1=f;system.out.println(\第\个月的兔子对数:\}}}[程序2]题目:判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去掉2到sqrt(这个数)。

如果它可以被除,它表明这个数不是质数,相反,它是质数。

公共课联席02{publicstaticvoidmain(string[]args){intcount=0;对于(inti=101;i<200;i+=2){booleanb=false;for(intj=2;j<=math.sqrt(i);j++){如果(i%j==0){b=false;break;}else{b=true;}if(b==true){count++;system.out.println(i);}}系统出来Println(\素数为:\}}[程序3]题目:打印出所有的\水仙花数\,所谓\水仙花数\是指一个三位数,其各位数字立方和等于该数本身。

例如:153是一个\水仙花数\,因为153=1的三次方+5的三次方+3的三次方。

公共课联席03{publicstaticvoidmain(string[]args){intb1,b2,b3;对于(intm=101;m<1000;m++){b3=m/100;b2=m%100/10;b1=m%10;if((b3*b3*b3+b2*b2*b2+b1*b1*b1)==m){system.out.println(m+\是一个水仙花数\}}}[程序4]题目:将一个正整数分解质因数。

最新JAVA编程题全集_50题及答案

最新JAVA编程题全集_50题及答案

最新JAVA编程题全集_50题及答案写一个函数,例如:给你的 a b c 则输出 abc acb bac bca cab cba import java.util.ArrayList; import java.util.List;public class NumT est {public static void main(String[] args) {String s="ABCD"; //原字符串List res ult = list(s, "");//列出字符的组合,放入resultSystem.out.printl n(result.size());;System.out.printl n(result);}/*** 列出基础字符串(base)的所有组合* @param base 以该字符串作为基础字符串,进行选择性组合。

* @param buff 所求字符串的临时结果* @param result 存放所求结果*/public static List list(String base,String buf f){List res ult = new ArrayList();/ /存放结果信息。

if(base.length()< =0){result.ad d(buff);}for(int i=0;i<="">List temp = list(new StringBuilder(base).deleteCharAt(i).toString (),buff+base.charAt(i));result.ad dAll(temp);}return result;}}+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++ public static void main(String [] args) {String s="ABCD";//原字符串List result = new ArrayList();//存放结果信息。

Java编程50题及答案

Java编程50题及答案

JAVA编程50题及答案【程序1】题目:古典问题:有一对兔子,从出生后第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);}}【程序3】题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

java考试编程题库及答案

java考试编程题库及答案

java考试编程题库及答案Java考试编程题库及答案1. 基础语法题- 题目:编写一个Java程序,实现两个整数的加法运算,并打印结果。

- 答案:```javapublic class Addition {public static void main(String[] args) {int num1 = 5;int num2 = 10;int sum = num1 + num2;System.out.println("The sum is: " + sum);}}```2. 控制结构题- 题目:编写一个Java程序,判断一个整数是否为素数,并打印结果。

- 答案:```javapublic class PrimeCheck {public static void main(String[] args) {int number = 29;if (isPrime(number)) {System.out.println(number + " is a primenumber.");} else {System.out.println(number + " is not a prime number.");}}public static boolean isPrime(int n) {if (n <= 1) return false;for (int i = 2; i <= Math.sqrt(n); i++) {if (n % i == 0) return false;}return true;}}```3. 数组与循环题- 题目:编写一个Java程序,打印数组中所有元素的平方。

- 答案:```javapublic class SquareElements {public static void main(String[] args) {int[] numbers = {1, 2, 3, 4, 5};for (int i = 0; i < numbers.length; i++) {int square = numbers[i] * numbers[i];System.out.println("Square of " + numbers[i] + " is " + square);}}}4. 面向对象题- 题目:定义一个名为`Car`的类,包含属性`color`和`speed`,以及一个方法`increaseSpeed(int increment)`来增加速度。

java考试试题及答案

java考试试题及答案

java考试试题及答案一、选择题1.以下关于Java的说法,哪个是正确的?A. Java是一种编程语言B. Java只能在Windows系统上运行C. Java只用于游戏开发D. Java不能用于Web开发答案:A2.下面哪个关键字用于定义一个类?A. classB. publicC. staticD. void答案:A3.Java中的基本数据类型有哪些?A. int, float, char, booleanB. Integer, Float, Character, BooleanC. String, Double, BooleanD. int, double, String, boolean答案:A4.以下哪个不是Java的访问修饰符?A. publicB. protectedC. privateD. final答案:D5.以下哪种循环结构在未知条件的情况下会被循环执行?A. for循环B. while循环C. do-while循环D. switch语句答案:C二、填空题1.Java中用于接收用户输入的类是__Scanner__。

2.Java中String类的equals()方法用于比较两个字符串的__内容__。

3.在Java中,用于创建对象的关键字是__new__。

4.Java中的集合类是位于__java.util__包下的。

5.Java中的逻辑与运算符是__&&__,逻辑或运算符是__||__。

三、简答题1.请简要介绍Java的特点及优势。

Java是一种跨平台的编程语言,具有以下特点和优势:- 简单易学:Java语法相对简单,与C++相比更容易上手。

- 面向对象:Java支持面向对象编程,具有封装、继承和多态的特性。

- 平台无关性:Java通过虚拟机实现跨平台,只需编写一次代码即可在不同操作系统上运行。

- 安全性:Java有严格的访问控制和内存管理机制,可防止非法访问和内存泄漏。

JAVA编程题全集(100题及答案)

JAVA编程题全集(100题及答案)

Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。

(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。

// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。

");elseSystem.out.println(year+" 年不是闰年。

");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。

(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。

java期末考试试题及答案

java期末考试试题及答案

java期末考试试题及答案Java期末考试试题及答案一、选择题(每题2分,共20分)1. Java语言属于以下哪类编程语言?A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案: B2. 下列哪个关键字用于定义Java类?A. classB. interfaceC. enumD. package答案: A3. Java中,哪个关键字用于实现继承?A. extendsB. implementsC. overrideD. abstract答案: A4. Java中,哪个关键字用于定义接口?A. classB. interfaceC. abstractD. enum答案: B5. 以下哪个是Java的集合框架中的数据结构?A. ArrayListB. LinkedListC. HashMapD. 所有选项答案: D6. Java中,哪个关键字用于抛出异常?A. tryB. catchC. throwD. finally答案: C7. 下列哪个是Java的访问修饰符?A. publicB. protectedC. privateD. 所有选项答案: D8. Java中,哪个关键字用于定义静态方法?A. staticB. finalC. abstractD. volatile答案: A9. 在Java中,哪个关键字用于定义同步方法?A. synchronizedB. volatileC. transientD. native答案: A10. Java中,哪个关键字用于实现多态?A. extendsB. implementsC. overrideD. abstract答案: C二、简答题(每题5分,共20分)1. 简述Java的垃圾回收机制。

答案: Java的垃圾回收机制是一种自动内存管理方式,它通过垃圾回收器定期检查不再被引用的对象,并释放它们占用的内存。

垃圾回收器工作时,会暂停应用程序的执行,直到回收完成。

java习题附答案

java习题附答案

java习题附答案Java习题附答案在学习Java编程语言的过程中,练习习题是非常重要的一部分。

通过解决习题,我们可以更好地理解和掌握Java的语法和特性。

下面将给大家提供一些Java习题,并附上答案,希望能帮助大家更好地学习和掌握Java编程。

1. 编写一个Java程序,输出1到100之间所有的偶数。

```javapublic class EvenNumbers {public static void main(String[] args) {for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {System.out.println(i);}}}}```2. 编写一个Java程序,计算1到100之间所有奇数的和。

```javapublic class SumOfOddNumbers {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 != 0) {sum += i;}}System.out.println("Sum of odd numbers from 1 to 100: " + sum); }}```3. 编写一个Java程序,判断一个数是否为素数。

```javapublic class PrimeNumber {public static void main(String[] args) {int num = 29;boolean isPrime = true;for (int i = 2; i <= num / 2; i++) {if (num % i == 0) {isPrime = false;break;}}if (isPrime) {System.out.println(num + " is a prime number.");} else {System.out.println(num + " is not a prime number.");}}}```通过以上习题的练习,我们可以更好地理解Java的循环、条件判断等基本语法,也能够提高我们的编程能力和解决问题的能力。

JAVA编程题全集(100题及答案)

JAVA编程题全集(100题及答案)

Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。

(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。

// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。

");elseSystem.out.println(year+" 年不是闰年。

");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。

(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。

(完整版)java练习题(含答案)

(完整版)java练习题(含答案)

1.编写程序,用数组实现乘法小九九的存储和输出。

【提示:采用多个一维数组。

】public class Multipation {public static void main(String[] args) {// TODO Auto-generated method stubint x[][]=new int[9][9];for(int i=0;i<9;i++){for(int j=0;j<9;j++){if(i>=j){int m=i+1;int n=j+1;x[i][j]=m*n;System.out.print(m+"*"+n+"="+x[i][j]);}}System.out.println();}}}2. 定义一个类Student,属性为学号、姓名和成绩;方法为增加记录SetRecord和得到记录GetRecord。

SetRecord给出学号、姓名和成绩的赋值,GetRecord通过学号得到考生的成绩。

public class Student {/***@param args*/private int ID;private String name;private float score;public void SetRecord(int ID,String name,float score){this.ID=ID;=name;this.score=score;}public float getRecord(int ID){if(ID==this.ID)return this.score;elsereturn -1;}public static void main(String[] args) {// TODO Auto-generated method stubStudent s=new Student();s.SetRecord(0,"alex",100);float Sco=s.getRecord(0);System.out.print(Sco);}}3.给出上题中设计类的构造函数,要求初始化一条记录(学号、姓名、成绩)。

(完整版)JAVA试题及答案(50道选择题)

(完整版)JAVA试题及答案(50道选择题)

选择题1、JAVA所定义的版本中不包括:( D )A、JAVA2 EEB、JAVA2 CardC、JAVA2 MED、J AVA2 HEE、J AVA2 SE2、下列说法正确的是( 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、boolean a = (9 >= 10);C、boolean a="真”;D、b oolean a = = false;6、以下(C )不是合法的标识符A、STRINGB、x3x;C、voidD、d e$f7、表达式(11+3*8)/4%3的值是( D )A、31B、0C、1D、28、( A )表达式不可以作为循环条件A、i++;B、i>5;C、bEqual = str。

equals("q");D、c ount = = i;9、运算符优先级别排序正确的是(A )A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;10、以下程序的运行结果是:( B )public class Increment{public static void main(String args[]) {int a;a = 6;System。

java初级试题及答案

java初级试题及答案

java初级试题及答案一、选择题(每题2分,共10分)1. Java语言的创始人是:A. James GoslingB. Dennis RitchieC. Bjarne StroustrupD. Guido van Rossum答案:A2. 下列哪个选项不是Java语言的特性?A. 平台无关性B. 面向对象C. 编译型语言D. 多线程答案:C3. Java中,用于捕获异常的关键字是:A. tryB. catchC. throwD. finally答案:B4. 下列哪个关键字用于定义接口?A. classB. interfaceC. abstractD. final答案:B5. Java中,用于创建线程的构造方法是:A. run()B. start()C. main()D. execute()答案:B二、填空题(每题2分,共10分)1. Java程序的执行入口是________方法。

答案:main2. Java中,________关键字用于声明一个类。

答案:class3. 在Java中,________关键字用于实现多态。

答案:extends4. Java中,________关键字用于实现接口。

答案:implements5. Java中,________关键字用于声明一个方法。

答案:void三、简答题(每题5分,共20分)1. 请简述Java平台的三个主要组成部分。

答案:Java平台的三个主要组成部分是Java虚拟机(JVM)、Java API和Java语言。

2. 解释Java中的垃圾回收机制。

答案:Java中的垃圾回收机制是指自动回收不再被使用的对象所占用的内存,以避免内存泄漏。

3. 描述Java中集合框架的主要接口。

答案:Java中集合框架的主要接口包括List、Set和Map。

4. 请解释Java中的异常处理机制。

答案:Java中的异常处理机制包括try、catch、finally和throw 关键字,用于捕获和处理程序运行过程中出现的异常。

java编程练习题及答案

java编程练习题及答案

java编程练习题及答案Java编程练习题及答案一、选择题1. 在Java中,哪个关键字用于定义类?A. classB. interfaceC. enumD. struct答案:A2. 下列哪个是Java中的合法标识符?A. 2variableB. forC. variable2D. class答案:C3. 在Java中,哪个方法用于获取当前对象的引用?A. this()B. super()C. clone()D. new()答案:A4. 以下哪个是Java的访问修饰符?A. publicB. staticC. finalD. abstract答案:A5. 在Java中,哪个关键字用于定义接口?A. classB. interfaceC. abstractD. enum答案:B二、简答题1. 请简述Java中的继承是如何工作的?答案:Java中的继承允许一个类(子类)继承另一个类(父类)的属性和方法。

子类可以扩展或修改父类的行为,实现代码复用。

继承是面向对象编程的核心概念之一。

2. 请解释Java中接口和抽象类的区别?答案:接口定义了一组方法规范,但不提供实现。

任何实现接口的类都必须提供接口中所有方法的具体实现。

抽象类可以包含抽象方法和具体方法,并且可以有成员变量。

抽象类可以作为其他类的基类,但不能被实例化。

三、编程题1. 编写一个Java程序,实现一个简单的计算器,可以进行加、减、乘、除运算。

```javaimport java.util.Scanner;public class SimpleCalculator {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("请输入第一个数字: ");double num1 = scanner.nextDouble();System.out.print("请选择运算符(+, -, *, /): "); char operator = scanner.next().charAt(0);System.out.print("请输入第二个数字: ");double num2 = scanner.nextDouble();double result = 0;switch (operator) {case '+':result = num1 + num2;break;case '-':result = num1 - num2;break;case '*':result = num1 * num2;break;case '/':if (num2 != 0) {result = num1 / num2;} else {System.out.println("除数不能为0"); }break;default:System.out.println("无效的运算符");}if (result != 0) {System.out.println("结果是: " + result);}scanner.close();}}```2. 编写一个Java程序,实现一个简单的学生管理系统,可以添加学生信息、显示所有学生信息。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

java编程题目及答案1. 下面哪些是thread类的方法()a start()b run()c exit()d getpriority()答案:abd解析:看java api docs吧:http://docs.oracle/javase/7/docs/api/,exit()是system类的方法,如systeexit(0)。

2. 下面关于ng.exception类的观点恰当的就是()a 继承自throwableb serialable cd 不记得,反正不正确答案:a解析:java异常的基类为ng.throwable,ng.error和ng.exception继承 throwable,runtimeexception和其它的exception等继承exception,具体的runtimeexception继承runtimeexception。

拓展:错误和异常的区别(error vs exception)1) ng.error: throwable的子类,用于标记严重错误。

合理的应用程序不应该去try/catch这种错误。

绝大多数的错误都是非正常的,就根本不该出现的。

ng.exception: throwable的子类,用作命令一种合理的程序要去catch的条件。

即为它仅仅就是一种程序运行条件,而非严重错误,并且引导用户程序回去catch它。

2) error和runtimeexception 及其子类都是未检查的异常(unchecked exceptions),而所有其他的exception类都是检查了的异常(checked exceptions).checked exceptions: 通常从一个可以恢复正常的程序中原都的,并且最出色能从这种异常中采用程序恢复正常。

比如说filenotfoundexception, parseexception等。

检查了的异常出现在编程阶段,必须必须采用try…catch(或者throws)否则编程不通过。

unchecked exceptions: 通常是如果一切正常的话本不该发生的异常,但是的确发生了。

发生在运行期,具有不确定性,主要是由于程序的逻辑问题所引起的。

比如arrayindexoutofboundexception, classcastexception等。

从语言本身的角度讲,程序不该去catch这类异常,虽然能够从诸如runtimeexception这样的异常中catch并恢复,但是并不鼓励终端程序员这么做,因为完全没要必要。

因为这类错误本身就是bug,应该被修复,出现此类错误时程序就应该立即停止执行。

因此,面对errors和unchecked exceptions应该让程序自动终止执行,程序员不该做诸如try/catch这样的事情,而是应该查明原因,修改代码逻辑。

runtimeexception:runtimeexception体系包含错误的初始化、数组越界出访和企图出访空指针等等。

处理runtimeexception的原则是:如果出现 runtimeexception,那么一定是程序员的错误。

例如,可以通过检查数组下标和数组边界来避免数组越界访问异常。

其他(ioexception等等)checked异常一般是外部错误,例如试图从文件尾后读取数据等,这并不是程序本身的错误,而是在应用环境中出现的外部错误。

3. 下面程序的运转结果就是()string str1 = "hello";string str2 = "he" + new string("llo");systeerr.println(str1 == str2);答案:false解析:因为str2中的llo是新申请的内存块,而==判断的是对象的地址而非值,所以不一样。

如果是string str2 = str1,那么就是true了。

4. 以下观点恰当的存有()a. class中的constructor不可省略b. constructor必须与class同名,但方法无法与class同名c. constructor在一个对象被new时执行d.一个class就可以定义一个constructor答案:c解析:这里可能会存有误区,其实普通的类方法就是可以和Pthreads同名的,和构造方法唯一的区分就是,构造方法没返回值。

5. 具体选项不记得,但用到的知识如下:string []a = new string[10];则:a[0]~a[9] = nulla.length = 10如果是int []a = new int[10];则:a[0]~a[9] = 0a.length = 106. 下面程序的运转结果:()public static void main(string args[]) {thread t = new thread() {public void run() {pong();}};t.run();systeout.print("ping");}static void pong() {systeout.print("pong");}#formatimgid_0#a pingpongb pongpingc pingpong和pongping都有可能d 都不输入答案:b解析:这里托福的就是thread类中start()和run()方法的区别了。

start()用以启动一个线程,当调用start方法后,系统才可以打开一个代莱线程,进而调用run()方法去继续执行任务,而单独的调用run()就跟调用普通方法就是一样的,已经丧失线程的特性了。

因此在启动一个线程的时候一定必须采用start()而不是run()。

7. 下列属于关系型数据库的是()a. oracle b mysql c ims d mongodb答案:ab答疑:ims(information management system )数据库就是ibm公司研发的两种数据库类型之一;一种是关系数据库,典型代表产品:db2;另一种则就是层次数据库,代表产品:ims层次数据库。

非关系型数据库有mongodb、memcachedb、redis等。

8. gc线程与否为守护者线程?()答案:是解析:线程分成守护者线程和非守护者线程(即为用户线程)。

只要当前jvm实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着jvm一同结束工作。

守护者线程最典型的应用领域就是 gc (垃圾废旧器)9. volatile关键字是否能保证线程安全?()答案:无法解析:volatile关键字用在多线程同步中,可保证读取的可见性,jvm只是保证从主内存加载到线程工作内存的值是最新的读取值,而非cache中。

但多个线程对volatile的写下操作方式,无法确保线程安全。

比如假如线程1,线程2 在展开read,load 操作方式中,辨认出主内存中count的值都就是5,那么都会读取这个最新的值,在线程1堆上count展开修正之后,可以write至主内存中,主内存中的count变量就可以变成6;线程2由于已经展开read,load操作方式,在展开运算之后,也可以更新主内存count的变量值为6;引致两个线程及时用volatile关键字修正之后,还是可以存有mammalian的情况。

10. 下列说法正确的是()a linkedlist承继自listb abstractset继承自setc hashset承继自abstractsetd weakmap继承自hashmap答案:ac解析:下面是一张下载的java中的集合类型的继承关系图,一目了然。

#formatimgid_111. 存在使i + 1 < i的数吗()#答案:存有解析:如果i为int型,那么当i为int能表示的`最大整数时,i+1就溢出变成负数了,此时不就拓展:存有并使i > j || i <= j不设立的数吗()答案:存在解析:比如说double.nan或float.nan,非常感谢@builderqiu网友表示。

12. 0.的数据类型是()a floatb doublec floatd double答案:b解析:预设为double型,如果为float型须要加之f表明表明,即0.f13. 下面哪个流类属于面向字符的输入流( )a bufferedwriterb fileinputstreamc objectinputstreamd inputstreamreader答案:d解析:java的io操作方式中存有面向字节(byte)和面向字符(character)两种方式。

面向字节的操作为以8位为单位对二进制的数据进行操作,对数据不进行转换,这些类都是inputstream和outputstream的子类。

面向字符的操作方式为以字符为单位对数据展开操作方式,大二的时候将二进制数据变为字符,在写下的时候将字符变为二进制数据,这些类都就是reader和writer的子类。

总结:以inputstream(输入)/outputstream(输出)为后缀的是字节流;以reader(输出)/writer(输入)为后缀的就是字符流。

14. java接口的修饰符可以为()a privateb protectedc finald abstract答案:cd解析:USB很关键,为了表明情况,这里稍微��嗦点:(1)接口用于描述系统对外提供的所有服务,因此接口中的成员常量和方法都必须是公开(public)类型的,确保外部使用者能访问它们;(2)USB仅仅叙述系统能够搞什么,但不阐明如何回去搞,所以USB中的方法都就是抽象化(abstract)方法;(3)接口不涉及和任何具体实例相关的细节,因此接口没有构造方法,不能被实例化,没有实例变量,只有静态(static)变量;(4)USB的中的变量就是所有同时实现类共计的,既然共计,确实就是维持不变的东西,因为变化的东西也不能算是共计。

所以变量就是不容变小(final)类型,也就是常量了。

(5) 接口中不可以定义变量?如果接口可以定义变量,但是接口中的方法又都是抽象的,在接口中无法通过行为来修改属性。

有的人会说了,没有关系,可以通过实现接口的对象的行为来修改接口中的属性。

这当然没有问题,但是考虑这样的情况。

如果接口 a 中有一个public 访问权限的静态变量 a。

按照 java 的语义,我们可以不通过实现接口的对象来访问变量 a,通过 a.a = xxx; 就可以改变接口中的变量 a 的值了。

相关文档
最新文档