Java基础语法考试题(20210109142117)
java基础语法试题

java基础语法试题121.以下Java代码段会产生几个对象分析:答案: 一个对象,因为编译期进行了优化,3个字符串常量直接折叠为一个122.Math.round(-11.2)的运行结果是。
答案: -11分析:小数点后第一位=5正数:Math.round(11.5)=12负数:Math.round(-11.5)=-11小数点后第一位<5正数:Math.round(11.46)=11负数:Math.round(-11.46)=-11小数点后第一位>5正数:Math.round(11.68)=12负数:Math.round(-11.68)=-12根据上面例子的运行结果,我们还可以按照如下方式总结,或许更加容易记忆:参数的小数点后第一位<5,运算结果为参数整数部分。
参数的小数点后第一位>5,运算结果为参数整数部分绝对值+1,符号(即正负)不变。
参数的小数点后第一位=5,正数运算结果为整数部分+1,负数运算结果为整数部分。
终结:大于五全部加,等于五正数加,小于五全不加。
123.十进制数278的对应十六进制数分析:十进制数278的对应十六进制数是116124.Java中int.long占用的字节数分别是分析:1:“字节”是byte,“位”是bit ;2: 1 byte = 8 bit ;char 在Java中是2个字节。
java采用unicode,2个字节(16位)来表示一个字符。
short 2个字节int 4个字节long 8个字节125.System.out.println('a’+1);的结果是分析:'a'是char型,1 是int行,int与char相加,char会被强转为int行,char的ASCII码对应的值是97,所以加一起打印98 126.下列语句那一个正确()A.java程序经编译后会产生machine codeB.java程序经编译后会产生 byte codeC.java程序经编译后会产生DLLD.以上都不正确答案:B分析:java程序编译后会生成字节码文件,就是.class文件127.下列说法正确的有()A.class中的constructor不可省略B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C128.执行如下程序代码()A.0B.1C.-1D.死循环答案:Cdo{...}while(...);语句至少执行一次129.下列哪一种叙述是正确的()A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{}包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号答案:D分析:abstract不能修饰字段。
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程序设计(基本语法)期末单元测试与答案

一、单选题1、下列哪个是合法的标识符()。
A.Guang zhouB.8ndC._HahaD.c=z正确答案:C2、下列Java的标识符中不可以包含()。
A.数字B.字母C.转义符D.下划线正确答案:C3、在Java编程中,用于表示变量名、方法名、类名、数组名的有效字符序列的是()。
A.关键字B.分隔符C.运算符D.标识符正确答案:D4、在Java中,属于整数类型变量的是()。
A.singleC.doubleD.byte正确答案:D5、在编写Java程序时,如果不为类的成员变量定义初始值,Java会给出它们的默认值,下列说法中不正确的一个是()。
A.boolean的默认值是falseB.long类型的默认值是0.0LC.byte的默认值是0D.char类型的默认值是'\0'正确答案:B6、如果定义有变量double d1, d2=4.0则下列说法正确的是()。
A.变量d1没有初始化,d2初始化为4.0B.变量d1,d2均未初始化C.变量d1,d2均初始化为4.0D.变量d2没有初始化,d1初始化为4.0正确答案:A7、以下程序代码的输出的结果是()int x=53;System. out. println(1.0+x/2);A.27.5B.27.0D.1.026正确答案:B8、在Java中,下列关于数据类型自动转换正确的是()。
A.char+int+double+“”结果一定是doubleB.基本数据类型和String相加结果一定是字符串型C.double型可以自动转化为intD.char类型和int型相加一定是字符正确答案:B9、下列运算结果为1的是()。
A.4>>>2B.8>>1C.4<<<2D.8<<1正确答案:A10、已知y=2, z=3, n=4,则经过n=n+ -y*z/n运算后n的值为()。
A.-1B.-3C.3D.-12正确答案:C11、已知x=2, y=3, z=4,则经过z- = --y – x--运算后,z的值为()。
java基础考试题目及答案

java基础考试题目及答案一、选择题(每题2分,共20分)1. Java中用于声明变量的关键字是什么?A. varB. letC. constD. class答案:A2. 下列哪个选项是Java中的保留字?A. finalB. publicC. privateD. all of the above答案:D3. Java中哪个类是所有类的根类?A. ObjectB. StringC. SystemD. Thread答案:A4. 在Java中,下列哪个数据类型不是基本数据类型?A. intB. doubleC. StringD. boolean5. Java中,下列哪个关键字用于实现继承?A. extendsB. implementsC. interfaceD. abstract答案:A6. Java中,下列哪个关键字用于实现多态?A. extendsB. implementsC. interfaceD. abstract答案:A7. 在Java中,下列哪个关键字用于声明一个方法?A. classB. methodC. functionD. void答案:D8. 下列哪个选项是Java中的异常处理关键字?A. tryB. catchC. throwD. all of the above答案:D9. Java中,下列哪个关键字用于声明一个接口?B. interfaceC. abstractD. final答案:B10. 在Java中,下列哪个关键字用于声明一个枚举?A. enumB. listC. setD. map答案:A二、填空题(每题2分,共20分)1. Java是一种_________语言,它支持_________编程。
答案:面向对象;多线程2. Java程序的执行是由_________类开始的。
答案:main3. 在Java中,一个类可以继承另一个类的属性和方法,这体现了_________的概念。
java语法基础训练题

Java基础上机实验【1】什么是数据类型?为什么要将数据划分为不同的数据类型?[解答]:【2】Java中有哪些数据类型?[解答]:【3】声明变量的作用是什么?[解答]:【4】若x=4,y=2,计算z值:(1) z=x&y(2) z=x|y(3) z=x^y(4) z=x>>y(5) z= ~ x(6) z= x<< y(7) z= x>>> y[解答]:【5】假设x=10,y=20,z=30,求下列布尔表达式的值:(1) x<10 || x<10(2) x>y && y>x(3) (x<y+z) && (x+10<=20)(4) z-y==x && (y-z)==x(5) x<10 && y>x(6) x>y || y>x(7) !(x<y+z) || !(x+10<=20)(8) ( !(x==y)) && (x !=y) && (x<y || y<x)[解答]:【6】什么是表达式?什么是语句?[解答]:【7】Java有哪些数据类型?请描述其分类情况。
[解答]:)【8】试比较break和continue语句的区别?[解答]:【9】有一函数:x (x<1)y = 3x-2 (1≤x<10)4x (x≥10)编写一程序,给定x值,输出y值。
[解答]:【10】说明while和do......while语句的差异。
[解答]:Do-while与while 语句的主要区别在于,先执行循环体中的语句再计算条件表达式,所以do-while语句的循环体至少执行一次。
【11】写出下列语句执行后的结果:for (k=1;k<=5;k++){if (k>4) break;System.out.println(“k=”+k);}[解答]:【12】编写程序,求1021kk=∑的值。
Java语法基础测试

Java语法基础测试一、不定项选择题(每题2分)1..选出下面错误的代码()A.public class Test {int i;System.out.println("hello"+i);}B.public class Test {public static void main(String[] args) {int i;System.out.println("hello"+i);}}C.public class Test {static public void main(String[] args) {int i=0;System.out.println("hello"+i);}}D.import java.util.*;package tst;public class Test {static public void main(String[] args) {Scanner s = new Scanner(System.in);}}2.下面变量命名正确的有( )A.$constB. classC. _classD. 1_constE. classclass3.下列哪些声明是合法的()A.long l=4990;B.int l=4990L;C.float f =1;D.float f=1.1;E.char=’宋’;F.byte b= 200;4.执行完下面的程序片段后,下面哪个结论是正确的?int a,b,c;a=1;b=2;c=(a+b>3?a++:++b);A. a的值是2,b的值是3B. a的值是1,b的值是3C. a的值是1,b的值是2D. c的值是false5.下列关于int类型的说法中,正确的是()A. int类型可以自动转换为所有的简单类型B. int类型只能自动转换为float、long、double类型C. 103是合法的int类型常量D. int类型只能强制转换成long类型6. 编译一个定义了两个类和三个方法的的Java源码文件,总共会产生几个字节码文件,这些字节码文件的扩展名是什么?()A. 5个字节码文件,以".java"为扩展名B. 2个字节码文件,以".java"为扩展名C. 5个字节码文件,以".class"为扩展名D. 2个字节码文件,以".class"为扩展名7.下列语句执行后,k的值是()int x=3,y=5,k=0;switch(x%y+3){case 0:k=x*y;break;case 6:k=x/y;break;case 12:k=x-y;break;default:k=x*y-x;break;}A. 12B. 0C. 15D. -28.若有如下程序段:int index=1;int foo[]=new int[3];int bar=foo[index];int baz=bar+index;程序的执行结果正确的是。
java基础语法练习题及答案.doc

java基础语法练习题及答案实验Java基本语法练习一、实验目的1、了解Java的数据类型;2、掌握各种变量的声明方式;3、理解运算符的优先级;4、掌握Java基本数据类型、运算符与表达式、数组的使用方法;5、理解Java程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法;6、通过以上内容,掌握Java语言的编程规则。
二、实验要求1、编写一个声明Java不同数据类型变量的程序;2、编写一个使用运算符、表达式、变量的程序;3、编写一个使用Java数组的的程序;4、编写表达式语句、复合语句的程序;5、编写使用不同选择结构的程序;6、编写使用不同循环结构结构的程序。
三、实验内容声明不同数据类型的变量1、编写声明不同数据类型变量的程序文件SimpleTypes. java,源代码如下:public class SimpleTypes{ public static void main{byte b=0x55; short s=0x55ff; int 1=1000000; long l=0xfffL; char c= 'c' ; float f=0.23F; double d=0. 7E-3; boolean bool=true; String Str = "这是字符串数据类型“;System, out. printin; System, out. printin; System, out. printin; System, out. printin; System, out. printin; System, out. printin; System, out. printin; System, out. printin; 1System, out. printin;}}2、编译并运行该程序,结果如图.1所示。
图.1声明不同类型变量的运行结果了解各种类型的取值范围和变量的使用范围21、通过下面程序了解变量的使用范围,源代码如下:public class PrimitiveTypeTest { public static voidmain { // byteSystem, out. printin;System, out. printin;System, out. printin;System, out. printin;// shortSystem, out.printin;System, out. printin;System, out. printin;System, out. printin;System, out. printin;// intSystem, out. printin;System, out. printin;System, out. printin;System, out. printin;System, out. printin;// longSystem, out. printin;System, out. printin;System, out. printin;System, out. printin;// floatSystem, out. printin;System, out. printin;System, out. printin;System, out. printin;System, out. printin;// doubleSystem, out. printin;System, out. printin;System, out. printin;System, out. printin;System, out. printin;// charSystem, out. printin;System, out. printin;//以数值形式而不是字符形式将Character. MIN_VALUE 输出到控制台System, out. printin Character. MIN VALUE);//以数值形式而不是字符形式将Character. MAX VALUE输出到控制台System, out. printin Character. MAX_VALUE);2、Scope, java文件,通过本程序了解变量的使用范围,源代码如下:3//Scope.java//Java中变量的作用域public class Scope{public static void main {int x =5;SystenL out・ printin;//只有x 有效{int y =6;System, out. printin;System, out. printin; //x, y 均有效}System, out. printin;System, out. printin;〃只有x 有效,y “out of scope”}}2、编译Scope, java此时会出现错误提示如图.所示。
java基础考试试题及答案

java基础考试试题及答案1. Java 是一种(A)语言。
A. 编译型B. 解释型C. 编译型和解释型D. 以上都不是答案:C2. 在 Java 中,用于定义类的关键字是(B)。
A. structB. classC. interfaceD. enum答案:B3. Java 中的 main 方法的返回类型必须是(A)。
A. voidB. intC. StringD. double答案:B4. 下列哪个选项是 Java 的数据类型?(D)A. BooleanB. CharC. IntegerD. All of the above答案:D5. 在 Java 中,用于声明字符串的关键字是(C)。
A. stringB. StringC. "string"D. 'string'答案:B6. Java 中的数组声明方式如下:(C)。
A. int[] array;B. array int[];C. int array[];D. All of the above答案:A7. Java 中的 switch 语句可以用于(B)类型的数据。
A. intB. StringC. floatD. All of the above答案:D8. 在 Java 中,用于捕获异常的关键字是(A)。
A. tryB. catchC. finallyD. throw答案:B9. Java 中的垃圾回收机制是自动的,用于回收不再使用的(C)。
A. 内存B. 变量C. 对象D. 以上都是答案:D10. Java 中的多线程可以通过实现(A)接口来创建。
A. RunnableB. CallableC. ThreadD. Executor答案:A11. 在 Java 中,下列哪个关键字用于定义接口?(C)A. classB. structC. interfaceD. enum答案:C12. Java 中的泛型是在哪个版本中引入的?(B)A. Java 1.4B. Java 5C. Java 6D. Java 7答案:B13. Java 中的集合框架位于哪个包中?(A)A. java.utilB. ngC. java.ioD. 答案:A14. 在 Java 中,下列哪个类提供了对集合的同步控制?(B)A. CollectionsB. Collections.synchronizedListC. ListD. ArrayList答案:B15. Java 中的 HashMap 是基于哪种数据结构实现的?(A)A. 哈希表B. 树C. 链表D. 数组答案:A16. 在 Java 中,下列哪个关键字用于声明单例模式?(D)A. staticB. finalC. privateD. All of the above答案:D17. Java 中的注解(Annotation)可以用来做什么?(C)A. 编译时处理B. 运行时处理C. 编译时和运行时处理D. 以上都不是答案:C18. Java 中的哪个类提供了对文件的输入输出操作?(A)A. FileB. FileInputStreamC. FileOutputStreamD. BufferedReader答案:A19. 在 Java 中,下列哪个关键字用于声明抽象类?(B)A. finalB. abstractC. staticD. synchronized答案:B20. Java 中的哪个关键字用于声明内部类?(C)A. classB. structC. inner classD. enum答案:C请注意,以上内容是一个简单的 Java 基础考试试题及答案示例。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学士后Java 阶段测试-U1 单元-笔试试卷 1 考试时间60 分钟选择题(共50题,每题2分,满分100分)1) 在Java 类中,使用以下( )声明语句来定义公有的int 型常量MAX。
A. public int MAX = 100;B. final int MAX = 100;C. public static int MAX = 100;D. public static final int MAX = 100;2)在Java 中,下列关于方法重载的说法中错误的是()(多选)A. 方法重载要求方法名称必须相同B. 重载方法的参数列表必须不一致C. 重载方法的返回类型必须一致D. 一个方法在所属的类中只能被重载一次3)给定Java 代码如下所示,在横线处新增下列()方法,是对cal 方法的重载。
(多选)public class Test{public void cal(int x, int y, int z) {}}A. public int cal(int x, int y, float z){ return 0; }B. public int cal(int x, int y, int z){ return 0; }C. public void cal(int x, int z){ }D. public void cal(int z, int y, int x){ }4)在Java 中,下面对于构造函数的描述正确的是()。
A. 类必须显式定义构造函数B. 构造函数的返回类型是voidC. 构造函数和类有相同的名称,并且不能带任何参数D. 一个类可以定义多个构造函数5)下面Java 代码的运行结果是()class Penguin {private String name=null; // private int health=0; // private String sex=null; // public void Penguin() { health = 10; sex = " 雄";System.out.println("名字健康值性别执行构造方法。
");} public void print() {System.out.println(" 企鹅的名字是" name" ,健康值是" health " ,性别是" sex " 。
"); } public static void main(String[] args) {Penguin pgn = new Penguin(); pgn.print();}}A. 企鹅的名字是null ,健康值是10,性别是雄。
B. 执行构造方法。
企鹅的名字是null ,健康值是0,性别是null 。
C. 企鹅的名字是null ,健康值是0,性别是null 。
D. 执行构造方法。
企鹅的名字是null ,健康值是10,性别是雄。
6) 下列选项中关于Java 中封装的说法错误的是( )。
A. 封装就是将属性私有化,提供公有的方法访问私有属性B. 属性的访问方法包括setter 方法和getter 方法C. setter 方法用于赋值、getter 方法用于取值D. 类的属性必须进行封装,否则无法通过编译7) 使用Java 实现封装,第一步是修改属性可见性来限制对属性的访问,第步是创建赋值和取值方法,用于对属性的访问,第三步应该是( )。
A. 使用赋值和取值方法访问属性B. 编写常规方法访问属性C. 在赋值和取值方法中,加入对属性的存取限制D. 编写main 方法创建对象,调用赋值和取值方法访问属性8) 分析如下所示的Java 代码,其中this 关键字的意思是( )。
public class Test {private String name;public String getName() {return name;}public void setName(String name) { = name; //this 关键字所在的行}A. n ame属性性B. Test 类的内部指代自身的引用C. Test 类的对象引用Test 类的其他对象D. 指所在的方法9) 在Java 中,以下程序编译运行后的输出结果为( )。
public class Test {int x, y;Test(int x, int y) {this.x = x;this.y = y;}public static void main(String[] args) {Test pt1, pt2;pt1 = new Test(3, 3);pt2 = new Test(4, 4);System.out.print(pt1.x pt2.x);}}A. 6B. 3 4C. 8D. 710) 在Java 语言中,下列关于类的继承的描述,正确的是( )。
A. 一个类可以继承多个父类B. 一个类可以具有多个子类C. 子类可以使用父类的所有方法D. 子类一定比父类有更多的成员方法11) Java中,如果类C是类B的子类,类B是类A的子类,那么下面描述正确的是( )。
A. C不仅继承了B中的公有成员,同样也继承了A中的公有成员B. C只继承了B中的成员C. C只继承了A中的成员D. C不能继承A或B中的成员12) 给定一个Java 程序Test.java 的代码如下所示,编译时,会出现以下( ) 情况。
class Parent {public int count() { // 第1 行return 0;}public class Test extends Parent {private int i;public int count() { // 第2 行return i % 9; // 第3 行}}A. 编译通过B. 在第1 行引发编译错误C. 在第2 行引发编译错误D. 在第3 行引发编译错误13) 给定如下一个Java 源文件Child.java ,编译并运行Child.java ,以下结果正确的是( )。
class Parent1 { Parent1(String s){System.out.println(s);}}class Parent2 extends Parent1{Parent2(){ System.out.println("parent2");}}public class Child extends Parent2 { public static void main(String[] args) { Child child = new Child();}}A. 编译错误:没有找到构造器Child()B. 编译错误:没有找到构造器Parent1()C. 正确运行,没有输出值D. 正确运行,输出结果为:parent214) 给定Java 程序Child.java 的代码如下所示,则编译运行该类的结果是 ( )。
class Parent { Parent() {System.out.println("parent");}public class Child extends Parent {Child(String s) {System.out.println(s);}public static void main(String[] args) { Child child = new Child("child");}}A. 输出:childB. 输出:childparentC. 输出:parentchildD. 编译错误15) 下列选项中关于Java 中super 关键字的说法错误的是( )。
A. super 关键字是在子类对象内部指代其父类对象的引用B. super 关键字不仅可以指代子类的直接父类,还可以指代父类的父类C. 子类可以通过super 关键字调用父类的方法D. 子类可以通过super 关键字调用父类的属性16) 分析如下所示的Java 代码,则选项中的说法正确的是( )(多选)。
class Parent{public String name;public Parent(String pName){ = pName;}}public class Test extends Parent { //1public Test(String Name){ //2 name="hello"; //3super("kitty"); //4} }A. 第2行错误,Test 类的构造函数中参数名称应与其父类构造函数中的参数名相同B. 第3行错误,应使用super关键字调用父类的name属性,改为="hello";C. 第4 行错误,调用父类构造方法的语句必须放在子类构造方法中的第一行17) 以下关于Object 类说法错误的是( )。
A. 一切类都直接或间接继承自Object 类B. 接口亦继承Object 类C. Object 类中定义了toString() 方法D. Object 类在ng 包中18) 在Java 中,多态的实现不仅能减少编码的工作量,还能大大提高程序的可维护性及可扩展性,那么实现多态的步骤包括以下几个方面除了( )。
A. 子类重写父类的方法B. 子类重载同一个方法C. 定义方法时,把父类类型作为参数类型;调用方法时,把父类或子类的对象作为参数传入方法D. 运行时,根据实际创建的对象类型动态决定使用哪个方法19) 给定Java 代码如下所示,则编译运行后,输出结果是( ) class Parent {public void count() {System.out.println(10%3);}}public class Child extends Parent{public void count() { System.out.println(10/3);}public static void main(String args[]) {Parent p = new Child(); p.count();}}A. 1B. 1.0C. 3D. 3.333333333333333520) 分析如下Java代码,如果想在控制台上输出“B类的test()方法”,则在D. 程序编译通过,无错误横线处应填入( )(多选)。
class A {public void test() {System.out.println("A 类的test() 方法");}}class B extends A {public void test() {System.out.println("B 类的test() 方法");}public static void main(String args[]) {A. A a = new B();a.test();B. A a = new A();a.test();C. B b = new A();b.test();D. B b = new B();b.test();21) 编译运行如下Java 代码,输出结果是( ) class Base {public void method(){System.out.print ("Base method");}}class Child extends Base{public void methodB(){System.out.print ("Child methodB");}}class Sample {public static void main(String[] args) {Base base= new Child(); base.methodB();}}A. Base methodB. Child methodBC. Base method Child MethodBD. 编译错误22) 下面关于Java 接口的说法错误的是()。