AnjoyoJava02章节考试题
- 格式:doc
- 大小:35.00 KB
- 文档页数:6
java二级历年考试真题及答案1. 题目:以下哪个选项是Java中合法的变量名?A. 2variableB. variable2C. $variableD. variable-2答案:B2. 题目:Java中,哪个关键字用于声明一个类?A. classB. interfaceC. structD. enum答案:A3. 题目:Java中,以下哪个选项不是基本数据类型?A. intB. floatC. StringD. boolean答案:C4. 题目:在Java中,下列哪个方法用于获取数组的长度?A. length()B. size()C. count()D. length答案:A5. 题目:Java中,下列哪个关键字用于实现类的继承?A. extendsB. implementsC. overrideD. abstract答案:A6. 题目:在Java中,哪个关键字用于声明一个方法?A. methodB. functionC. defD. void答案:D7. 题目:Java中,哪个关键字用于声明一个接口?A. interfaceB. classC. abstractD. package答案:A8. 题目:在Java中,下列哪个选项不是异常处理关键字?A. tryB. catchC. finallyD. except答案:D9. 题目:Java中,哪个关键字用于实现多态?A. overrideB. implementsC. extendsD. abstract答案:A10. 题目:在Java中,哪个关键字用于声明一个类为抽象类?A. abstractB. interfaceC. finalD. static答案:A11. 题目:Java中,哪个关键字用于声明一个方法为抽象方法?A. abstractB. interfaceC. finalD. static答案:A12. 题目:在Java中,下列哪个选项不是集合框架的一部分?A. ListB. SetC. MapD. Array答案:D13. 题目:Java中,哪个关键字用于声明一个类为最终类?A. finalB. staticC. abstractD. private答案:A14. 题目:在Java中,下列哪个选项不是垃圾回收机制的一部分?A. finalize()B. System.gc()C. Object.wait()D. Object.notify()答案:C15. 题目:Java中,哪个关键字用于声明一个类为线程安全的?A. synchronizedB. volatileC. transientD. static答案:A16. 题目:在Java中,下列哪个选项不是多线程的实现方式?A.继承Thread类B.实现Runnable接口C.实现Callable接口D.使用synchronized关键字答案:D17. 题目:Java中,哪个关键字用于声明一个方法为同步方法?A. synchronizedB. volatileC. transientD. static答案:A18. 题目:在Java中,下列哪个选项不是输入输出流的一部分?A. FileInputStreamB. FileOutputStreamC. ObjectOutputStreamD. DataOutputStream答案:C19. 题目:Java中,哪个关键字用于声明一个类为单例类?A. singletonB. privateC. staticD. final答案:B20. 题目:在Java中,下列哪个选项不是网络编程的一部分?A. InetAddressB. URLC. SocketD. JDBC答案:D。
第1章Java 语言入门1-1开发与运行Java程序需要经过哪些主要步骤和过程?1-2怎样区分应用程序和小应用程序?应用程序的主类或小应用程序的主类必须用public修饰吗?1-3Java程序是有什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎样的?1-4在运行小应用程序的html文件中可以使用codebase属性制定小应用程序的字节码所驻留的目录。
如果不使用codebase属性,小应用程序的字节码文件必须和运行它的html在同一目录中,编写一个小应用程序并将它的字节码存放在某个目录中,比如c:\Boy. 把运行该小应用程序的html文件(注意其中的codebase属性):< applet code=你的小程序的字节码wdith=20 height=30codebase=c:\boy> </applet>存放在另一个目录中(查阅有关编写网页方面的书籍,会有更详细的关于怎样在一个网页中嵌入一个小应用程序的讲解)。
第2章标识符、关键字和数据类型2-1上机运行下列程序,注意观察输出的结果。
public class E{ public static void main ( string args [ ] ){ for (int i=20302; i<=20302; i++){ System.out. println (( char ) i );}}2-2System.out. println (“你好”);可输出字符串值,也可以使用System.out. println()输出变量或表达式的值,只需使用并置符号:“+”将变量、表达式或一个常数值与一个字符串并置即可,如System.out. println(“”+x);System.out. println(“:”+123+“大于”+122)等。
上机调试下列程序,注意观察结果,特别注意System.out. print()和System.out. println()的区别。
public class xiti9{public static void main(String args[]) {int x=4;int y;if(x<1){y=x;}else if(x>=10){y=4*x;}else{y=3*x-2;}System.out.println("y="+y);}}习题12public class xiti12{public static void main(String args[]) {int sum=0;for(int k=1;k<=10;k++){sum=sum+k*k;}System.out.println("sum="+sum); }}习题13public class xiti13{public static void main(String args[]) {intt,a=3,b=5,c=8;if(a<b){t=a;a=b;b=t;}if(a<c){t=a;a=c;c=t;}{t=b;b=c;c=t;}System.out.println("大小顺序输出为:"+a+" "+b+" "+c); }}习题14public class xiti14{public static void main(String args[]){int n=1;System.out.print("\n1-100之间的所有素数为:\n"+" 3"); for(int i=1;i<=100;i++){for(int j=2;j<=i/2;j++){if(i%j==0){break;}if(j==i/2){System.out.print(" "+i);n++;}}}System.out.println("\n共有"+n+"个素数。
java二级试题及答案一、选择题(每题2分,共10题,共计20分)1. 下面哪个选项不是Java关键字?A. classB. packageC. finalD. import2. 下面哪种循环语句可以用于遍历数组或集合?A. forB. whileC. do-whileD. switch3. Java中的包(package)用于什么目的?A. 控制类的访问权限B. 封装类的属性和方法C. 组织类的层次结构D. 使类具有继承特性4. 在Java中,以下哪个关键字用于定义一个类的子类?A. superB. thisC. extendsD. implements5. 下面哪个选项不是Java中的访问修饰符?A. privateB. protectedC. publicD. static6. 在Java中,以下哪个方法用于启动一个新的线程?A. start()B. run()C. execute()D. launch()7. 在Java中,以下哪个异常类是所有异常的父类?A. ExceptionB. RuntimeExceptioinC. ErrorD. Throwable8. 在Java中,以下哪个关键字用于定义常量?A. varB. constC. finalD. static9. 在Java中,以下哪种集合类用于存储键值对?A. ArrayListB. HashSetC. LinkedListD. HashMap10. 下面哪个选项不是Java中的基本数据类型?A. intB. doubleC. booleanD. string二、填空题(每空2分,共5题,共计10分)1. Java中的数据类型分为两类,分别为基本数据类型和_____________。
2. Java中的三目运算符的格式是_____________。
3. 在Java中,方法的重载是指在同一个类中,方法名相同但参数类型或个数_____________的情况下可以存在多个方法。
2.1(将摄氏温度转化为华氏温度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a degree in celsius: ");double Celsius = input.nextDouble();double Fahrenheit;Fahrenheit = (9.0/5) * Celsius + 32;System.out.println(Celsius + " Celsius is" + Fahrenheit + " Fahrenheit");}}2.2(计算圆柱体的体积)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the radius and length of a cylinder: ");double radius = input.nextDouble();double length =input.nextDouble();double area = radius * radius * Math.PI;double volume = area * length;System.out.println("The area is " + area);System.out.println("The volume is " + volume);}}2.3(将英尺转换为米)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a value for feet: ");double feet = input.nextDouble();double meters = feet * 0.305;System.out.println(feet+ " feet is " + meters + " meters");}}2.4(将磅转换为千克)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a number in pounds: ");double pounds = input.nextDouble();double kilograms = pounds * 0.454;System.out.println(pounds + " pounds is " + kilograms + " kilograms");}}2.5(财务应用程序:计算消费)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the subtotal and gratuity rate: ");double subtotal = input.nextDouble();double Gratuity = input.nextDouble();double gratuity = subtotal * Gratuity * 0.01;double total = gratuity + subtotal;System.out.println("The gratuity is $" + gratuity + " and total is " + total);}}2.6(求一个整数个位数的和)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a number between 0 and 1000: ");int number = input.nextInt();int sum = number % 10 + (number / 10) % 10 + (number / 100) % 10;System.out.println("The sum of the digits is " + sum);}}2.7(求出年数)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the number of minutes: ");double minutes = input.nextDouble();int years = (int)minutes / (60*24*365);int days= (int)minutes/ (60*24) - ((int)minutes/ (60*24*365)) * 365;System.out.println(minutes + "minutes is approximately " + years + " years and " + days + " days");}}2.8(当前时间)import java.util.*;public class ShowXureentTime {public static void main(String[] args) {// TODO Auto-generated method stublong totalMilliseconds = System.currentTimeMillis();//得到1970年1月1日到现在的毫秒数long totalSeconds = totalMilliseconds / 1000;//将总毫秒转化为总秒long currentSecond = totalSeconds % 60;//当前的秒数long totalMinutes = totalSeconds / 60;//得到总的分钟long currentMinute = totalMinutes % 60;//当前的分钟数long totalHours = totalMinutes / 60;//得到总小时Scanner input = new Scanner(System.in);System.out.print("Enter the time zone offset to GMT: ");long zone = input.nextInt();long currentHour = totalHours % 24 + zone;//当前的小时数if(currentHour <0) {currentHour = currentHour + 24;}System.out.println("Current time is " + currentHour + ":" +currentMinute + ":" + currentSecond + " GMT");}//GMT世界时}2.9(物理:加速度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter v0, v1 and t: ");double v0 = input.nextDouble();double v1 = input.nextDouble();double t = input.nextDouble();double acceleration = (v1 - v0) / t;System.out.println("The average acceleration is " +String.format("%.4f", acceleration));}}2.10(科学:计算能量)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the amount of water in kilograms: ");double M = input.nextDouble();System.out.print("Enter the initial temperature: ");double temperature1 = input.nextDouble();System.out.print("Enter the final temperature: ");double temperature2 = input.nextDouble();double energy = M * (temperature2 - temperature1) * 4184;System.out.println("The energy needed is " + energy);}}2.1(人口统计)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the number of years: ");int year = input.nextInt();int population = 312032486;int temp= (365*12*60*60/7)-(365*12*60*60/13)+(365*12*60*60/45);//j = 诞生-死亡+移民迁入;for(int i = 1 ;i <= year ;i ++ ) {population = temp + population ;}System.out.println("The population in " + year + " years is " + population);}}2.12(物理:求出跑道的长度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter speed and acceleration: ");double speed = input.nextDouble();double acceleration = input.nextDouble();double length = speed * speed / (2 * acceleration);System.out.println("The minimum runway length for this airplane is " + String.format("%.3f", length));}}2.13(财务应用程序:复利值)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the monthly saving aomunt: ");double monthly = input.nextDouble();double money = 0;for(int i = 1; i <= 6; i++) {money = (monthly + money) * (1 + 0.00417);}System.out.println("After the sixth month, the account value is " + String.format("%.2f", money));}}2.14(医疗应用程序:计算BMI)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter weight in pounds: ");double pounds = input.nextDouble();double kilogram = pounds * 0.45359237;System.out.print("Enter height in inches: ");double inches = input.nextDouble();double meter = inches * 0.0254;double BMI = (kilogram / (meter * meter)) ;System.out.println("BMI is " + String.format("%.4f", BMI));}}2.15(几何:两点间距离)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter x1 and y1: ");double x1 = input.nextDouble();double y1 = input.nextDouble();System.out.print("Enter x2 and y2: ");double x2 = input.nextDouble();double y2 = input.nextDouble();double distance = (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1);System.out.println("The distance between the two points is " + Math.pow(distance, 0.5));}}2.16(几何:六边形面积)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the side: ");double side = input.nextDouble();double area = 3 * Math.sqrt(3) / 2 * side * side;System.out.println("The area of the hexagon is " + area);}}2.17(科学:风寒温度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the temperature in Fahrenheit between -58°F and 41°F: ");double Fahrenheit = input.nextDouble();System.out.print("Enter the wind speed (>=2) in miles per hour: ");double speed = input.nextDouble();double t = 35.74 + 0.6215 * Fahrenheit - 35.75 * Math.pow(speed, 0.16) + 0.4275 * Fahrenheit * Math.pow(speed, 0.16);System.out.println("The win chill index is " + String.format("%.5f", t));}}2.18(打印表格)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("a\t" + "b\t" + "pow(a, b)");System.out.println("1\t" + "2\t" + (int)Math.pow(1, 2));System.out.println("2\t" + "3\t" + (int)Math.pow(2, 3));System.out.println("3\t" + "4\t" + (int)Math.pow(3, 4));System.out.println("4\t" + "5\t" + (int)Math.pow(4, 5));System.out.println("5\t" + "6\t" + (int)Math.pow(5, 6));}}2.19(几何:三角形的面积)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter three points fir a trinangle: ");double x1 = input.nextDouble();double y1 = input.nextDouble();double x2 = input.nextDouble();double y2 = input.nextDouble();double x3 = input.nextDouble();double y3 = input.nextDouble();double edge1= Math.pow((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1), 0.5);double edge2= Math.pow((x3 - x2) * (x3 - x2) + (y3 - y2) * (y3 - y2), 0.5);double edge3= Math.pow((x3 - x1) * (x3 - x1) + (y3 - y1) * (y3 - y1), 0.5);double s =(edge1 + edge2 + edge3) / 2;double area = Math.pow(s* (s- edge1) * (s- edge2) * (s- edge3), 0.5);System.out.println("The area of the tringle is "+ String.format("%.1f", area));}}2.20(财务应用程序:计算利息)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter balance and interst rate (e.g, 3 for 3%): ");double balance = input.nextDouble();double annual = input.nextDouble();double interst = balance * ( annual / 1200);System.out.println("The interst is "+ String.format("%.5f", interst));}}2.21(财务应用:计算未来投资值)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter investment amount: ");double investment = input.nextDouble();System.out.print("Enter annual interest rate in percentage: ");double interest = input.nextDouble();interest = interest / 100 / 12;System.out.print("Enternumber of yuears: ");double years = input.nextDouble();double value = investment * Math.pow((1 + interest), (years * 12));System.out.println("Accumulated value is $" + String.format("%.2f", value));}}2.22(财务应用:货币单位)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter an amount in int, for example 1156: ");int amount = input.nextInt();int remainingAmount = amount;int numberOfOneDollars = remainingAmount / 100;remainingAmount = remainingAmount % 100;int numbersOfQuarters = remainingAmount / 25;remainingAmount = remainingAmount % 25;int numberOfDimes = remainingAmount / 10;remainingAmount = remainingAmount % 10;int numberOfNickels = remainingAmount / 5;remainingAmount = remainingAmount % 5;int numberOfPennies = remainingAmount;System.out.println("Your amount " + amount + " consosts of");System.out.println(" " + numberOfOneDollars + " dollars");System.out.println(" " + numbersOfQuarters + " quarters");System.out.println(" " + numberOfDimes + " dimes");System.out.println(" " + numberOfNickels + " nickels");System.out.println(" " + numberOfPennies + " pennies");}}2.23(驾驶费用)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the driving distance: ");double drivingDistance = input.nextDouble();System.out.print("Enter miles per gallon: ");double milesPerGallon = input.nextDouble();System.out.print("Enter price per gallon: ");double pricePerGallon = input.nextDouble();double costOfDriving = drivingDistance / milesPerGallon * pricePerGallon;System.out.print("The cost of driving is $" + String.format("%.2f", costOfDriving));}}。
Java2 实用教程<第三版>课后习题参考答案第1 章Java 入门1. 开发与运行Jav a 程序需要经过哪些主要步骤和过程?答:〔 1编写Java 源文件:使用文本编辑器〔Edit 或记事本,拓展名为.java〔2编译Java 源文件:使用Java 编译器〔javac.exe。
得到字节码文件*.class〔3运行Java 程序:Java 应用程序使用Java 解释器〔java.exe执行字节码文件;Java 小应用程序使用支持Java 标准的浏览器来执行。
2. 怎样区分应用程序和小应用程序?应用程序的主类或小应用程序的主类必须用public 修饰吗?答:①应用程序必须有main 方法,这个方法是程序执行的入口。
小应用程序没有main 方法。
②应用程序的主类不一定用public 修饰;小应用程序的主类必须用public 修饰。
3. Jav a 程序是由什么组成的?一个程序中必须要有public 类吗?Jav a 源文件的命名规则是怎样的?答:①Java 程序由类组成。
②应用程序可以没有public 类;小应用程序一定有一个类是public 类〔主类。
③应用程序:如果只有一个类,源文件名与该类的类名相同,拓展名为.java;有多个类时,如果有public 类〔最多一个,源文件名与public 类的类名相同,拓展名是.java;没有public 类,源文件名与任何一个类的类名相同即可,拓展名为.java。
小应用程序:源文件名与主类的类名相同,拓展名是.java。
4. 在运行小程序的HTM L 文件中可以使用codebas e 属性指定小程序的字节码所驻留的目录。
如果不使用codebas e 属性,小程序的字节码文件必须和运行它的HTM L 文件在同一目录中。
编写一个小程序并将小程序的字节码存放在某个目录中,比如C:\5000;把运行该小程序的HTM L 文件〔注意其中的codebas e 属性: <applet code=你的小程序的字节码width=200 height=300 codebase=C: \5000></applet>存放在另一个目录中。
可选试题判断题×1.Java是低级语言√2.Java是面向对象的程序设计语言×3.Java是编译型的计算机语言√5.Java源程序文件的后缀是.java×10.一个Java源程序文件中可以有多个public类√11.一个Java源程序中可以有多个类×12.一个Java Applet源程序的主类可以有多个父类√13.Java应用程序的入口方法是main√14.Java应用程序(Application)的主类中一定要有主方法(main)√16.Java小程序(Applet)的主类的父类必须是类Applet×17.Java语言中的逻辑变量可以和整型变量相互强制转换×18.在程序中可对用final修饰的变量的值进行更改×27.双精度数强制转换成单精度数后,其数值精度提高×11.方法可以有多个返回值×5.重载的方法可以通过它们的返回值类型的不同来区分√16.定义在方法体中的变量能与定义在方法体外的变量同名√6.一个对象一定要属于某个类×7.构造函数的方法名可由编程人员任意命名√8.类的构造函数名必须和类名相同√10.构造函数可以重载×11.如果一个类定义中没有定义构造函数,该类就没有构造函数√12.如果一个类定义中已经定义了构造函数,java不会再给它提供默认的构造函数×11.静态属性和静态方法属于类的一个具体对象√12.static 变量能是private 变量×14.static方法能处理非static成员√15.非static方法能处理static成员×16.static方法中能有this引用×18.类的私有属性和私有方法能被其子类直接访问√12.子类的成员变量能与其父类的成员变量同名×14.子类可以重新定义从父类继承来的同名方法,并且允许它们有不同类型的返回值√15.接口支持多继承(extends)√15.一个接口能够继承(extends)多个接口×7.抽象类只能做为父类×8.可以定义抽象类的对象√9.抽象方法能被继承√10.抽象方法只能存在于抽象类或接口中×11.声明为final的方法能在子类中重新定义×13.终结类能做为父类×14.终结方法能被继承×15.终结方法只能存在于终结类中√17.接口中所有方法均为抽象方法√18.接口中所有方法均为public的×19.abstract 和final能同时修饰一个类基本语法√1.Java中的字符使用的是16位的Unicode 编码。
一、选择题:(共20题,每题3分)1.下列关于Activity的说法正确的一个选项是( C )。
① Activity是Android的四大组件之一。
② Activity在实现中通常作为一个Java类出现。
③ Activity是一个用来提供用户交互界面的组件。
④ Activity使一个应用程序的指定数据集提供给其它应用程序。
⑤当一个Activity启动另一个Activity时,就需要使用到Intent,它起到媒介的作用。
⑥每一个Android应用都必须要有一个叫做“MainActivity”的入口Activity。
⑦入口Activity会作为初始界面在应用关闭时再展示给用户。
⑧每个Activity都可以启动另一个Activity。
A、①③④⑥⑧B、②⑤⑥⑦⑧C、①②③⑤⑧D、①②③④⑦2.下列关于使用一个Activity说法错误的一个选项是( A )。
①需要首先实现一个继承自Activity的子类。
②重写父类中的一些方法。
③一般都会重写onCreate(),这个方法是在Activity被关闭时自动调用的。
④重写的onCreate()方法是具有参数的,也有返回值。
⑤ onCreate()方法的参数是一个Bundle类型的对象。
⑥ Bundle类与Map一样,是一个key-value类型。
⑦在四大组件之间传递数据时,Bundle常被用来存储数据。
⑧ Bundle的key只能为String,而value则没有限制。
⑨ Bundle类型的参数用来处理Activity状态信息的保存与恢复。
A、①②⑤⑥⑧⑨B、②④⑤⑥⑦⑧C、①③④⑤⑥⑧D、①②③⑦⑧⑨3.下列关于Activity描述不正确的是( B )。
A、每一个Activity都必须在文件中进行配置。
B、关于Activity生命周期的各个方法相同点就是它们自动调用的时机不同。
C、我们只能使用鼠标选择这种方式完成配置,而不能用手写代码这种方式完成配置。
D、Activity的生命周期构成方法有onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy()和onRestart()七种。
java 二级试题及答案Java二级试题及答案Java是一种广泛应用于软件开发领域的编程语言,掌握Java编程对于计算机专业人士来说尤为重要。
为了帮助读者更好地了解与掌握Java,本文将介绍一些常见的Java二级试题以及相应的详细答案。
第一节:基础知识题1. 什么是Java语言?它的特点是什么?Java语言是一种面向对象的程序设计语言,由Sun Microsystems公司于1995年推出。
它具有以下特点:- 简单易学:Java语法简洁明了,规范性强,相对于其他编程语言来说更容易上手。
- 面向对象:Java支持面向对象的编程风格,可以通过类和对象的概念来组织代码和数据。
- 平台无关性:Java应用程序可以在不同的操作系统上运行,因为Java程序是在Java虚拟机(JVM)上运行的。
- 安全性:Java提供了一些安全特性,如字节码验证和安全管理器,以确保程序在运行时的安全性。
- 高性能:Java通过Just-In-Time(JIT)编译器将字节码转换为本地机器码,从而提高了执行效率。
2. Java中如何实现多线程?请简要描述一下多线程同步的方法。
在Java中,可以通过继承Thread类或实现Runnable接口来创建多线程。
下面是一个使用Runnable接口的示例代码:```javapublic class MyThread implements Runnable {public void run() {// 线程执行的代码}public static void main(String[] args) {Thread thread = new Thread(new MyThread());thread.start();}}```多线程同步可以通过以下方法实现:- 使用synchronized关键字:可以用来修饰方法或代码块,确保同一时间只有一个线程可以访问被修饰的代码,从而避免竞态条件和数据不一致的问题。
第二章考试题
一、选择题:(每题3分,共20题)
1.以下哪一个是合法的标示符( D )。
A、double
B、3x$
C、str@
D、exam2e_
2.表达式(11 + 3 * 8) / 4 % 3的值是(B)。
A、31
B、2
C、1
D、0
3.x和y是整形的变量,值分别为16和5,则x/y和(double)x/y
值分别是(C )。
A、1和3.2
B、3.2和1
C、3和3.2
D、3.2和3
4.下列不属于简单数据类型的是( D )。
A、整数类型
B、浮点数类型
C、布尔类型
D、类对象类型
5.下列属于Java关键字的是(C )。
A、TRUE
B、goto
C、float
D、NULL
6.下列声明和赋值语句错误的是( C )。
Java默认小数是double
A、double w=3.1415;
B、String strl=”bye”;
C、float z=6.74567;
D、boolean truth=true;
7.自定义类型转换是由按优先关系从低级数据转换为高级数据,优
先次序为( A )。
A、char-int-long-float-double
B、int-long-float-double-char
C、long-float-int-double-char
D、以上都不对
8.JAVA中,数据类型值中不可能出现的符号是(D )。
A、d
B、f
C、E
D、/
9.下列语句块输出的值为(B )。
int three = 3;
char one = '1';
char result = (char) (three + one);
System.out.println("result=" + result);
A、result=3+1
B、result=4
C、result=31
D、result=1
10.下列不属于整型变量的是(A)。
A、float
B、long
C、byte
D、short
11.下列部分代码的正确输出结果分别为(C)。
System.out.println("26.1 % 4 = " + 26.1 % 4);
System.out.println("26 % 4 = " + 26 % 4);
A、26.1 % 4 = 2.0和26 % 4 = 2
B、26.1 % 4 = 2和26 % 4 = 2.0
C、26.1 % 4 = 2.1000000000000014和26 % 4 = 2
D、26.1 % 4 = 2.1000000000000014和26 % 4 = 2.0
12.下列数据类型转换,必须进行强制类型转换的是(B)。
A、byte→int
B、int→char
C、short→long
D、float→double
13.在java语句中,位运算操作数只能为整型或(B)数据。
A、实型
B、字符型
C、布尔型
D、字符串型
14.Java中,用(A )关键字定义常量。
A、final
B、#define
C、float
D、const
15.下列程序段执行后 b3 的结果是(C )。
boolean b1 = true, b2 = false, b3;
b3 = b1 ? b1 : b2;
A、0
B、1
C、true
D、false
16.设有定义 int i=123; long j=456; 下面赋值不正确的语句是
(D)。
A、j=i;
B、j=(long)i;
C、i=(int)j;
D、i=j;
17.下列说法错误的是(D)。
A、简单类型指的是一个数、一个字符或者一个true/false值。
B、引用类型指的是八种简单类型以外的数据类型。
C、String不是基本数据类型,而属于引用类型。
D、浮点类型数字除非明确声明为double,否则为float。
18.已知i为整形变量,关于一元运算++i和i++,下列说法正确的是
( D )。
A、++i运算将出错。
B、在任何情况下运行程序结果都一样。
C、在任何情况下运行程序结果都不一样。
D、在任何情况下变量i的值都增1。
19.下列不属于逻辑运算符的是(B)。
A、&&
B、+
C、!
D、^
20.下列代码输出结果为(A)。
int a = 10;
int b = 0;
int c;
if (a > 50) {
b = 9;
}
c = b + a;
System.out.println(c);
A、10
B、19
C、0
D、编译出错
二、简答题:(每题8分,共5题)
1.请写出Java中所有的简单数据类型。
byte
int short long float double Char boolean
2.请写出Java的变量命名规则。
变量的名字可大小写混用,但首字母应该小写,词由大写字母分隔,限制使用美元符号,因为这个字符对内部类有特殊的含义。
3.请描述在Java语言中定义标识符的时候需要注意哪些问题。
必须以字母下划线和美元符号开头,后面可以跟任意的字母,下划线数字和美元符号,此处的字母不局限于26个英文字母。
而且还可以包含中文字符,
1,不能以数字开头
2,不能用java关键字
3,只能包含美元符号,不能包含@ #等符号,
4对大小写敏感
4.请写出下列各运算中e的结果:
int a = 20;int b = 30;int c = 40;int d = 50;int e ;
e = a++; 20
e = ++b; 31
e = c++ + b; 71
e = (a > b) ? a : b; 31
e = 2 / 3; 0
e = 9 % 4; 1
e = 5 | 7; 7
e = 9 & 4; 0
e = -8 % -5; -3
e = -8 % 5; -3
e += d++; 47
5.编写一个程序,根据矩形的长length=
6.9m(float类型)和
width=10m(int类型),计算矩形周长和面积。
(请在周长和面积的值后面加上它们个自的单位“m”和“㎡”周长必须为float 类型,面积必须为int类型。
周长=2*(长+宽);面积=长*宽。
)。