【黑马基础班考试题】1.Java基础知识测试_答案

合集下载

黑马基础班入学考试

黑马基础班入学考试
}else {
System.out.println(“a”);
}
}
A.a
B.2
C.1
D.编译报错
28.下面程序运行的结果是()
public static void main(String [] args) {
int x = 19;
switch(x) {
case 19;
System.out.println(“A”);
System.out.println(x);
}
30.哪些代码能实现从1到10的和? ()
A.
int sum = 0;
for(int a = 1; a <= 11; a++)
{
sum += a ;
}
B.
int sum = 0;
int a = 1;
while(a <= 10)
{
sum += a;
a = a+ 1;
D.x = 101;
32.查看下面的程序代码,输出的结果是()
public static void main(String [] args) {
int x = 80;
int x = x - 1;
x *= 10;
if(x != 790)
Sytem.out.println(x);
else
System.out.println(x / 10);
}
C.
int sum = 0;
int a = 0;
do{
a = a + 1;
sum += a;
}while(a != 10);
D.
int sum = 0;

黑马基础测试

黑马基础测试

黑马程序员训练营基础测试1、创建一个类Sample,在main方法中定义一个ArrayList的集合类,并向集合中添加任意多个同一种类型的元素,利用Iterator接口,遍历集合中的所有元素.2、排序有哪几种方法?请列举。

并用JAVA实现一个快速排序.3、已知一个int数组, 编程从数组中获取最大数.4、已知一个int类型的数组,用冒泡排序法将数组中的元素进行升序排列.5、 JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally 分别代表什么意义?在try块中可以抛出异常吗?6、创建一个包含实例内部类的类,外部类中定义一个名为str的String字符串并初始化任意值,在内部类中定义跟外部类同种类型且同名的变量,并在内部类中定义一个方法,分别打印外部类和内部类的变量.7、先写一个程序,打印从1到100的值。

之后修改程序,通过使用break关键词,使得程序在打印到98时退出。

然后尝试使用return来达到相同的目的。

8、编写程序获取已知文件的扩展名. 注意: abc.txt的扩展名是txt,abc.java.txt的扩展名也是txt.9、有这样三个类,Person,Student.GoodStudent。

其中Student继承了Person,GoodStudent继承了Student,三个类中只有默认的构造函数,用什么样的方法证明在创建Student类的对象的时候是否调用了Person的构造函数,在创建GoodStudent类的对象的时候是否调用了Student构造函数?如果在创建Student对象的时候没有调用Person的构造函数,那么采用什么样的手段可以调用父类的构造函数?10、模拟妈妈做饭,做饭时发现没有盐了,让儿子去买盐(假设买盐需要3分钟),只有盐买回来之后,妈妈才能继续做饭的过程。

黑马程序员测试题提交格式要求1、请下载eclipse或myeclipse,并在eclipse中新建一个exam的Java工程,如下图所示:2、在src目录下新建一个com.itheima的包,并在下面编写Test1、Test2、Test3…….等等完成对应的第1题、第2题、第3题………如图所示:3、在编写每一道题时,格式要求如图所示:4、做完后,选中工程,右键点copy,然后复制到本地硬盘中,用zip工具打成压缩包后提交,如图所示:。

【黑马基础班考试题】1.Java基础知识测试_答案

【黑马基础班考试题】1.Java基础知识测试_答案

【黑马基础班考试题】1.Java基础知识测试_答案考试宣言:同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!我的考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。

单选2分/题,多选4分/题。

多选题不全对半分,全对满分。

1.下面说法正确的是()A. JVM就是Java虚拟机,包含java核心类库// JRE: JVM+Java library。

B. JRE就是java运行环境,包含java程序编译运行的工具环境// JDK:JRE+ToolsC. JDK就是java开发环境,javac是其中的一个工具D. 功能范围:JDK > JVM > JRE2.下面的说法正确的是( )A. Java 语言是面向对象的、解释执行的网络编程语言。

B. Java 语言具有可移植性,是与平台无关的编程语言。

C. Java 语言可对内存垃圾自动收集。

D. Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。

3.给定java代码,如下:public byte count(byte b1, byte b2){return ____;}要使这段代码能够编译成功,横线处可以填入A. (byte)(b1-b2) //返回值类型为byte,要求选项结果为byteB. b1-b2C. (byte)b1+b2D. (byte)b1/b24.关于类的命名,正确说法是()A. 可以由数字和英文拉丁字母组成,且可以任意排序//数字不能开头B. 命名要做到见名知意C. 如果是由多个单词组成,每个单词首字母大写D. 可以是Java已经定义过的关键字//囧5.关于main方法说法错误的是()A.main方法是java程序执行的入口B.main方法的方法体至少要有一行代码//可以没有代码C.main必须定义在一个类中D. main方法的定义格式为:public static void main(String[] args){}6.类中某方法定义如下:double fun(int a,int b){return a*1.0/b;}同一类内其它方法调用该方法的正确方式是:A. double a = fun(1,2);B. double a = fun(1.0,2.0);C. int x = fun(1,2);D. int x = fun(1.0,2.0);7.给定java代码,如下,编译运行,结果是()public static void main(String[] args){boolean flag;System.out.println(“flag”+flag);//局部变量需要先初始化再使用}A. 编译错误B. 编译通过,单出现运行时错误C. 正常运行,输出flag=falseD. 正常运行,输出flag=8.下面哪个关键字可以定义一个类()A. interfaceB. class //查看下面解释C. extendsD. implements在Oracle官网java英文原版教程,链接地址:https:///javase/tutorial/java/IandI/createint erface.html上有如下解释:In the Java programming language, an interface is a reference type,similar to a class, that can contain only constants,method signatures, default methods, static methods, and nested types. Method bodies exist only for default methods and static methods. Interfaces cannot be instantiated—they can only be implemented by classes or extended by other interfaces. Extension is discussed later in this lesson.9.byte类型的取值范围是()A. -256至255B. -255至255C. -128至127 //*/?#%¥@*&……D. -127至12810.下面关于java中方法,描述错误的是( )A.必须定义在类或者接口里面B.定义一个方法之前要明确该方法需要的参数和返回值类型C.方法可以提高代码复用性,提高程序运行的效率//可以提高编写代码的效率D.方法只有调用才会被执行11.下面程序执行的结果是?( )class Test{public static void main(String[] args){System.out.pr intln(““+’a’+1); // +在这里是连接符,任何数据和字符串连接后,都是字符串}}A. 98B. a1C. 971D. 19712.for循环格式如下:for(表达式1;表达式2;表达式3){//code}下面描述错误的是()A. 表达式1处的代码会被执行多次//只能一次B. 表达式1处可以定义变量C. 表达式3用于决定循环是否应该结束//表达式2D. 表达式2的值可以是任意类型,也可以是boolean类型//只能是boolean13.以下选项可以正确创建一个长度为3的二维数组的是 ( )A.new int[2][3]B.new int[3][]C.new int[][3]D.以上答案都不对14.设以下是应用程序中定义的方法printBinary,若在其main方法中有方法调用语句printBinary(2),则输出的结果是 ( )。

黑马Java基础入学测试题_

黑马Java基础入学测试题_

考试题目:本试卷是JAVA基础班入学考试试卷,主要考察JAVA基础前五天大家在入学之前掌握的一个整体情况,本试卷共有40道题,其中有30道是单选,有10道题是多选题,希望大家认真对待1.Sun公司对Java语言的宣传口号为“一次编程,到处执行”,体现了Java的什么特性B A:编程的简单性B:与平台无关性C:Java的面向对象特性D:Java程序的鲁棒性2.Java平台有三个版本,分别是javaSE、JavaME、javaEE,下列说法不正确的是BA.javaSE是指Java语言的标准版B.javaME是指Java语言的标准版C.javaEE是指企业级的Java开发语言,是为企业提供服务的D. javaME是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API.3.想要运行Java程序,必须得先通过______Java源文件,然后再通过______java程序CA. javaw工具编译 javac工具运行B. java工具编译 javac工具运行C. javac工具编译 java工具运行D. java工具编译 java工具编译4.Java语言中的int及char数据类型的长度分别为CA:16位和8 位B:8位和16位C:32位和16位D:32位和8位5.请问byte数据的取值范围是?CA:0-128B:负127-128C:负128-127D:以上都不对6.java语言的源程序经编译后所生成的程序类型为D A:.exe 型的可执行程序B:.obj 型二进制的程序C:.lib 型二进制的库程序D:.class 型类代码的程序7.某java程序的类定义如下: Bclass MyClass{}则java源文件编译后生成的类文件名称为:A:myclass.classB:MyClass.classC:MYCLASS.classD:MyClass.java8.下列那种标识符在java程序中是错误的DA:MyClass_Base12B:_MyClass$Base12C:$MyClass_12D:76MyClass$129.下列那种标识符不能作为java程序中的变量名B A:INTB:booleanC:characterD:Java_Float10.请问,以下哪些语句不是合法的赋值语句?DA:boolean b = true;B:int a = (int)1.23;C:double x = 1.1;D:char c = '10';11.下面()段java语句在编译时不会出现异常和错误。

黑马程序员测试题练习(一)

黑马程序员测试题练习(一)

黑马程序员测试题练习(一)1. 在JAVA中,下列哪些说法是正确的A.java源文件的扩展名为.javaB.写好的java源程序可以直接运行C.编写的源程序必须先编译后才能运行D.程序员可以读懂扩展名为.class的文件Java程序的后缀名,及java程序的运行机制:.java 源文件javac编译生成字节码文件(.clsss文件)java执行2. 在java中,关于数组描述正确的是A.数组中的索引下标从1开始B.存储在数组当中的数据都属于同一数据类型C.通过数组名.length()能获得数组的长度D.数组的最大索引下标是数组的长度减1数组:存储的是同一种数据类型的元素。

索引从0开始,到个数-1。

它有一个length属性,可以用来获取数组的元素个数。

3. 下列标识符哪个是合法的A.classB.$abcC.1234D._name标识符:可以有字母,数字,下划线和美元符组成。

不能以数字开头不能和java中的关键字重名4. 下面程序的输出结果是什么( )int[] arr = new int[10];System.out.println(arr[0]);A.编译不通过B.运行时出错C.输出nullD.输出0数组:Java中的数据类型:基本数据类型:4类8种整型:byte,short,int,long浮点型:float,double字符型:char布尔型:boolean注意:整型默认是int,浮点型默认是double。

long类型要以l或者L标识,float类型要以f或者F 标识。

隐式转换:从小到大boolean类型不参与转换。

byte,short,char int long float - double 强制转换:(数据类型)被转换的数据float f = (float)12.5; float f = 12.5f;引用数据类型:类,接口,数组引用数据类型的数据存储在堆内存中:都有默认值。

整型:0浮点型:0.0布尔型:false字符型:’\u0000’空字符5. 下面哪些赋值语句是正确的?( )A. long test = 012;B. float f = -412;C. int other = (int) true;D. double d = 0x12345678;E. byte b = 128;定义变量:数据类型变量名 = 初始化值;6. 下面哪个语句正确地声明一个整型的二维数组( )A. int a[][] = new int[][];B. int b[10][10] = new int[][];C. int c[][] = new int[10][10];D. int []d[] = new int[10][10];数组定义:[]int[] arr;int arr[];二维数组的定义:第一维的长度必须给出。

黑马Java基础入学测试题_

黑马Java基础入学测试题_

考试题目:本试卷是JAVA基础班入学考试试卷,主要考察JAVA基础前五天大家在入学之前掌握的一个整体情况,本试卷共有40道题,其中有30道是单选,有10道题是多选题,希望大家认真对待1.Sun公司对Java语言的宣传口号为“一次编程,到处执行”,体现了Java的什么特性B A:编程的简单性B:与平台无关性C:Java的面向对象特性D:Java程序的鲁棒性2.Java平台有三个版本,分别是javaSE、JavaME、javaEE,下列说法不正确的是BA.javaSE是指Java语言的标准版B.javaME是指Java语言的标准版C.javaEE是指企业级的Java开发语言,是为企业提供服务的D. javaME是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API.3.想要运行Java程序,必须得先通过______Java源文件,然后再通过______java程序CA. javaw工具编译 javac工具运行B. java工具编译 javac工具运行C. javac工具编译 java工具运行D. java工具编译 java工具编译4.Java语言中的int及char数据类型的长度分别为CA:16位和8 位B:8位和16位C:32位和16位D:32位和8位5.请问byte数据的取值范围是?CA:0-128B:负127-128C:负128-127D:以上都不对6.java语言的源程序经编译后所生成的程序类型为D A:.exe 型的可执行程序B:.obj 型二进制的程序C:.lib 型二进制的库程序D:.class 型类代码的程序7.某java程序的类定义如下: Bclass MyClass{}则java源文件编译后生成的类文件名称为:A:myclass.classB:MyClass.classC:MYCLASS.classD:MyClass.java8.下列那种标识符在java程序中是错误的DA:MyClass_Base12B:_MyClass$Base12C:$MyClass_12D:76MyClass$129.下列那种标识符不能作为java程序中的变量名B A:INTB:booleanC:characterD:Java_Float10.请问,以下哪些语句不是合法的赋值语句?DA:boolean b = true;B:int a = (int)1.23;C:double x = 1.1;D:char c = '10';11.下面()段java语句在编译时不会出现异常和错误。

黑马基础班入学考试

黑马基础班入学考试
}
A .80
B. 79
C. 790
D.编译错误
33.下面代码运行结果是()
public staic void main(String [] args) {
int x = 80;
x ++;
switch(x) {
case 80;
System.out.println(80);
case 81;
System.out.println(81);
while(flag && x > 0) {
System.out.println(x);
x = x - 1;
}
}
A.什么也没有输出
B.程序报错
C.输出8 7 6 5 4 3 2
D.输出8 7 6 5 4 3 2 1
36.下面代码的运行结果是()
public static void main(String [] args) {
1.下列有关Windows的快捷键说法不正确的是()
A.ctrl+c是粘贴操作
B.ctrl+c是复制操作
C.ctrl+v是粘贴操作
D.ctrl+a是全选操作
2.关于JRE和JDK的说法正确的是()
A.JRE是Java语言的运行环境
B.JDK是Java语言的开发工具包
C.JDK包含JRE
D.必须要有JDK才能运行Java程序
B.int arr [] [] = new int [3] [];
C.int [] [] arr {{1, 2, 3}, {4, 5}, {6, 7, 8, 9}};
D.int arr [] [] = {{2, 3}, {6}, 9};

黑马程序员面试题目(3篇)

黑马程序员面试题目(3篇)

第1篇第一部分:Java基础知识1. Java基础- Java的内存模型:请解释Java内存模型,包括堆、栈、方法区、本地方法栈和程序计数器的作用及区别。

- Java的访问控制:描述Java中的访问控制符(public, private, protected, default),并说明它们如何影响类的成员访问。

- Java的继承:解释Java中的继承机制,包括单继承和多继承的优缺点。

- Java的多态:说明Java中的多态概念,并举例说明如何实现多态。

- Java的封装:解释Java中的封装概念,并说明如何通过访问控制符实现封装。

2. Java集合框架- ArrayList和LinkedList的区别:比较ArrayList和LinkedList在性能、内存使用、迭代器使用等方面的区别。

- HashMap和HashSet的区别:分析HashMap和HashSet在数据结构、性能、使用场景等方面的差异。

- Java集合的遍历:描述Java集合的几种遍历方式,如for循环、迭代器、forEach等。

3. Java异常处理- Java异常的分类:解释Java中的检查型异常(checked exceptions)和非检查型异常(unchecked exceptions)。

- try-catch-finally语句:说明try-catch-finally语句的使用场景和执行顺序。

- 自定义异常:解释如何自定义异常类,并举例说明。

4. Java泛型- 泛型的概念:描述Java泛型的概念,并说明泛型的使用优势。

- 泛型的限制:分析Java泛型的使用限制,如泛型类型擦除。

- 泛型通配符:解释泛型通配符(?)的作用和使用场景。

第二部分:Java高级特性1. Java并发编程- 线程和进程的区别:比较Java中的线程和进程,包括它们的创建方式、调度方式等。

- 线程的创建方法:列举并解释Java中创建线程的几种方法,如继承Thread类、实现Runnable接口、使用Callable接口等。

java黑马 课后基础题

java黑马 课后基础题

java黑马课后基础题
黑马程序员是专注于Java开发的培训机构,其课后基础题可以帮助学员巩
固所学知识,提高编程技能。

以下是一些常见的黑马程序员课后基础题目:
1. 什么是Java中的基本数据类型?请列举出8种基本数据类型,并说明它
们的取值范围。

2. Java中的关键字有哪些?请列举出至少10个关键字,并解释它们的作用。

3. 什么是Java中的注释?请说明单行注释和多行注释的用法。

4. Java中的运算符有哪些?请列举出至少10种运算符,并说明它们的优先级。

5. 什么是Java中的控制流语句?请列举出至少5种控制流语句,并说明它
们的用法。

6. Java中的异常处理机制是什么?请说明try-catch语句的用法。

7. 什么是Java中的类和对象?请说明类和对象的关系。

8. Java中的继承是什么?请说明继承的实现方式。

9. Java中的多态是什么?请说明多态的实现方式。

10. Java中的封装是什么?请说明封装的作用。

以上题目只是黑马程序员课后基础题的一部分,学员可以通过完成这些题目来巩固所学知识,提高自己的编程技能。

同时,也可以通过参考答案和解析来检查自己的答案是否正确,加深对知识点的理解。

黑马班java测试题(2012_11_30)

黑马班java测试题(2012_11_30)

选择:1.以下代码对的执行后的输出结果为:( )int x= -3;int y= -10;System.out.println(y%x);A、-1B、 2C、1D、32. 接口中说明了一组公共的抽象方法,其中是否包含公共的静态方法?()A.可以B.不可以C.不能肯定D. 因静态方法不能被改写,故不能出现在接口中3. System.out.println(1+2+"abc"+3+4); 的打印结果:()A.3abc34 B . 12abc34 C. 3abc7 D. 3abc344.int i =0; i = i++; System.out.println(i); 打印的值是:A. 1B. 0C. 25. class Demo{int show(int a,int b){return 0;}}下面那些函数可以存在于Demo的子类中。

()A.public int show(int a,int b){return 0;}B.private int show(int a,int b){return 0;}C.private int show(int a,long b){return 0;}D.public short show(int a,int b){return 0;}E.static int show(int a,int b){return 0;}代码阅读:1. 写出下面代码的运行结果,并解释原因。

class FatherClass {{System.out.println("FatherClass Construct Code...");}public FatherClass() {System.out.println("FatherClass Create...");}}public class ChildrenClass extends FatherClass {static {System.out.println("ChildrenClass Static Code...");}public ChildrenClass() {System.out.println("ChildrenClass Create...");}public static void main(String[] args) {new ChildrenClass();}}2. 写出下面代码的运行结果,并解释原因public class Base {int i = 99;Base() {amethod();}public void amethod() {System.out.println("Base.amethod()");}}public class Derived extends Base {int i = -1;public static void main(String[] args) {Base b = new Derived();System.out.println(b.i);b.amethod();}public void amethod() {System.out.println("Derived.amethod()");}}简答题:1.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?2.“==”与equals方法的区别。

【黑马程序员】Java笔试中常见的问题及经典答案

【黑马程序员】Java笔试中常见的问题及经典答案

【黑马程序员】Java笔试中常见的问题及经典答案1、java中实现多态的机制是什么?答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。

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

2、垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收答:对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况。

通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。

通过这种方式确定哪些对象是"可达的",哪些对象是"不可达的"。

当GC确定一些对象为"不可达"时,GC就有责任回收这些内存空间。

可以。

程序员可以手动执行System.gc(),通知GC运行,但是Java语言规范并不保证GC一定会执行。

3、静态变量和实例变量的区别?答:static i = 10; //常量class A a; a.i =10;//可变4、什么是java序列化,如何实现java序列化?答:序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。

可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。

序列化是为了解决在对对象流进行读写操作时所引发的问题。

序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。

基本知识黑马面试必考题

基本知识黑马面试必考题

基本知识JDK和JRE的区别答:JDK是java语言开发工具包,包含JRE和开发工具(javac.exe等);JRE是java语言的运行环境,包含JVM和核心类库;JVM是java虚拟机,保证了java的跨平台性。

JVM跨平台吗?答:JVM不具有跨平台性,不同的操作系统所对应的JVM不一样。

正是因为JVM的不跨平台,才能够使java语言具有跨平台性。

保留字是什么?答:保留字是还未使用的关键字,可能在java以后的版本中使用。

有goto和const。

java语言的特点?答:完全面向对象,跨平台性,开源,简单易学,安全可靠,高性能,分布式处理,多线程,健壮性,多态。

main是关键字吗?答:不是的。

main是主函数的名字,能够被虚拟机识别,是程序执行的入口。

\path和classpath的区别?答:path环境变量配置的是可执行文件.exe的执行路径;能够在不同盘符下访问path路径下的可执行文件。

Classpath配置的java语言编译后生成的字节码文件的执行路径。

7. 计算机最基本的存储单位是:字节(byte)计算机能直接识别的进制是:二进制8进行运算的时,变量和常量有什么区别?答:变量在运算过程中的值是变化的,可以被多次赋值。

常量则是固定的。

9标识符的组成?以及命名规则?答:标识符有26个字母的大小写,0到9,_和$组成。

命名规则:不能使用关键字,不能数字开头,严格区分大小写,要见名知义。

函数名和变量名如果是多个单词组成,第一个单词的首字母小写,其余首字母大写。

类名和接口名如果是多个单词组成,首字母全部大写。

包名全部小写。

常量名全部大写,如果是多个单词,用_隔开。

10.变量数据类型分为哪几种?如何使用变量?答:基本数据类型:整形:包括byte、short、int、long。

浮点型:包括float、doble。

字符型;char;布尔型:boolean。

引用数据类型:数组、类、接口。

变量需要先定义,再赋值,才能使用。

JAVA基础知识考核(含答案).docx

JAVA基础知识考核(含答案).docx

精品文档JAVA基础知识考核题班级:姓名:成绩:一、选择题( 80 分,每题 2 分)1.J ava编译器的命令是(D)A. javaB.appletviewerC.jdbD.javac2.Java 解释器的命令是(A)A. javaB.appletviewerC.jdbD.javac3.Java 开发人员使用的开发工具包是( C)A. JVMB.JREC.JDKD.Eclipse4.下列说法正确的是(B)A. 使用 Java 语言开发的程序可以在任何平台下运行,且不需要JREB. 使用 Java 语言开发的程序可以在任何平台下运行,但需要JREC. Java 虚拟机是独立的,JDK 中不包含虚拟机D.Java 语言编译后是字节码文件,操作系统可直接执行5.下列全部是合法的Java 标识符的是( B )A.09stu teacher $moneyB_salary post123nameC case abstract finalD#ID list today6.程序中有如下语句final float PI = 3.14f;下列说法正确的是( C )A PI 是一个变量,初始化的值是 3.14.B定义有错误, PI 是 float 类型 3.14 后不能加 fC PI 是一个常量,其值是 3.14D 对 PI 可以重新赋值,如PI = 3.1415926;7 下列初始化值正确的是(B)A float score = 90.5;B boolean flag = false;C char name = " 张三 ";D boolean num = 1;8.有如下代码精品文档class ScopeVar {public static void main(String [ ] args) {int num = 10;if ( num = = 10) {int num1 = num * num;}num1 = num1+10;System.out.println(num1);}}输出正确的是(D)A 110B20C不确定D程序错误9. 下面对 Scanner 描述正确的是(C)A Scanner 类提供输入数据的方法,但只能输入字符串B Scanner 的使用方法: Scanner.next();C使用 Scanner 需要导入 java.util.Scanner 类D从键盘读取一个整数的方法Scanner sc = new Scanner();int num =sc.nextInt();10. 有 String str1="hello";int num=100;则对str1+100 说法正确的是(A)A str1+100 的值是一个字符串hello100B str1+100 会产生语法错误,字符串不能和整数相加C str1+100 不会产生语法错误,最终的结果是100, str1 的值被忽略掉D str1+100 不会产生语法错误,最终的结果是hello, 100 被忽略掉11.哪种方法返回 String 中的字符数 ( B )A. size()B. length()C.width()D.girth()12. 下面创建数组正确的是BA int[]int_array=int[10];B int[]int_array=new int[10];C int[]int_array=new int(10);D int[]int_array = new int{10};13.研究下面的 Java 代码:switch(x){case 1:System.out.println(1);case 2:case 3:System.out.println(3);case 4:精品文档System.out.println(4);}当 x=2 时,运行结果是(C)A没有输出任何结果B输出结果为 3C输出结果为 3 和 4D输出结果为 1、 3 和 414.给定一个 Java 程序的代码片段,如下if(grade== ’A’||grade==’B’)score = 90;else if(grade == ’C’||grade =‘D ’) score = 70;elsescore = 60;把这段代码转换为switch 语句,以下正确的是:(D)A switch(grade){case ‘A’:case ‘B ’:score =90; case ‘C’:case ‘D ’score =70; default:score = 60;}B switch(grade){case ‘A’:break;case ‘B ’:score = 90;case ‘C’:break;case ‘D ’score = 70;Default:score = 60; break;}C switch(grade){case ‘B ’:score = 90;break;case ‘D ’score = 70;break;default:score = 60; break;}D switch(grade){case ‘A’:case ‘B ’:score = 90; break;case ‘C’:case ‘D ’score = 70; break;Default:score = 60; break;}15.阅读以下代码import java.util.Scanner;public class Test{public static void main(String[] args){Scanner sc = new Scanner(System.in);System.out.println( “请输入买包子所用的钱的数目”)double money = sc.nextDouble();int count = buy(money);System.out.println( “可买包子的数目为:”+count);}public static int buy(double money){int count = (int) (money/0.4);return count;}}描述正确的是(A)A如果输入 5,输出是:可买包子的数目为:12B如果输入 5,输出是 : 可买包子的数目为: 5C如果输入 5,输出是:可买包子的数目为:12.5D程序错误,没有输出16. 在 Java 中,下列代码运行的结果是(C)public static void main(String[] args){int a=1, b=2, c=3;if (a<0)if (b<0)c=10;elsec=20;System.out.println(c);}A 、输出: 10B 、输出: 20 C、输出: 3 D 、编译报错17.分析下面的 Java 代码片段,编译运行后的输出结果是(D)。

黑马就业班java测试题

黑马就业班java测试题

if (m1.equals(m2)) {
System.out.println("Both are equal");
} else {
System.out.println("Both are not equal");
}
}
//地址值
}
A. 代码编译时报出错误提示信息“equals() 方法未定义”
B. 编译通过,抛出运行期异常.
//损失精度
4. 在Java中,下列语句不能通过编译的有( ac) A. String s= “join”+ 3; B. int a= “join”+3; C. int a= ‘a’+5; D. float f=5+5.5;
5. 设 a = 3,则表达式 (--a )<<a的结果是( b) A. 16 B. 8 C. 24 D. 12
} System.out.println(sum); } } A. 55 B. 45 C. 35 D. 30
15. 和下面代码能完成相同的选项是(b) class Demo {
public static void main(String[] args) { int i = 1;
int sum = 0; while (i <= 100) {
22. 下列选项中关于java中this关键字的说法错误的有( bd ) A. this关键字是一个对象的引用 B. this关键字可以用于引用当前类以外其他类型的对象 C. this可用于构造函数中,调用类本身重载的构造函数,但是必须写 在首行 D. this可用于静态方法中
23. 下列关于构造函数的说法正确的是( ac ) A. 方法名必须与类名相同 B. 使用new关键字创建对象时,java虚拟机会自动调用构造函数 C. 我们在定义一个类时,必须要声明至少一个构造函数 D. 构造函数中不能使用return语句 可以有

【黑马程序员】Java试题、50道Java面试题集(2019最新版)

【黑马程序员】Java试题、50道Java面试题集(2019最新版)

【黑马程序员】Java试题、50道Java面试题集(2019最新版)以下的内容是对原有的和最近Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,相对来说比较经典,相信对准备入职的Java程序员一定有所裨益。

一、Java基础部分1、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:1)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。

抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。

2)继承:继承是从已有类得到继承信息创建新类的过程。

提供继承信息的类被称为父类(超类、基类);得到继承信息的类被称为子类(派生类)。

继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段(如果不能理解请阅读阎宏博士的《Java与模式》或《设计模式精解》中关于桥梁模式的部分)。

3)封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。

面向对象的本质就是将现实世界描绘成一系列完全自治、封闭的对象。

我们在类中编写的方法就是对实现细节的一种封装;我们编写一个类就是对数据和数据操作的封装。

可以说,封装就是隐藏一切可隐藏的东西,只向外界提供最简单的编程接口(可以想想普通洗衣机和全自动洗衣机的差别,明显全自动洗衣机封装更好因此操作起来更简单;我们现在使用的智能手机也是封装得足够好的,因为几个按键就搞定了所有的事情)。

4)多态性:多态性是指允许不同子类型的对象对同一消息作出不同的响应。

简单的说就是用同样的对象引用调用同样的方法但是做了不同的事情。

多态性分为编译时的多态性和运行时的多态性。

如果将对象的方法视为对象向外界提供的服务,那么运行时的多态性可以解释为:当A系统访问B系统提供的服务时,B 系统有多种提供服务的方式,但一切对A系统来说都是透明的(就像电动剃须刀是A系统,它的供电系统是B系统,B系统可以使用电池供电或者用交流电,甚至还有可能是太阳能,A系统只会通过B类对象调用供电的方法,但并不知道供电系统的底层实现是什么,究竟通过何种方式获得了动力)。

黑马Java_IO知识测试附答案

黑马Java_IO知识测试附答案

IO 部分测试题考试宣言:同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。

单选2分/题,多选4分/题。

多选题不全对半分,全对满分。

1.下列叙述中,正确的是 ( )A. Reader是一个读取文本文件的接口B. Reader是读取二进制数据文件的抽象类C. Reader是一个读取文本文件的抽象类D. Reader是读取二进制数据文件的一般类2.下面关于IO流的说法正确的是( )A. IO流可以分为字节流和字符流B. FileReader和FileWriter是专门用于读取和写入文本文件的C. 顶层类有InputStream和OutputStreamD. 顶层类有Reader和Writer,他们都是接口//抽象类3.FileReader类描述正确的是( )A. 字节输入流B. 字符输入流//没什么说的,记住吧C. 打印流D. 序列化流4.下列关键字能和try一起使用的有( )A. finalB. finalizeC. finallyD. catch5.具有readLine()方法的类是( )A. FileWriterB. InputStreamReaderC. FileReaderD. BufferedReader // readLine()方法是缓冲流BufferedReader的特有方法6.关于newLine()方法描述错误的是( )A. newLine()方法写入换行B. newLine()方法会根据不同操作系统自动选择使用相应的换行符C. newLine()方法是FileWiter类的方法D. newLine()方法是BufferedWriter类的方法// 这个也是特有方法.7.实现下列哪个接口,可以启用序列化功能( )A. Runnable接口B. Comparable接口C. Serializable接口// 这个记住吧D. Comparator接口8.以下关于java异常说法不正确的是()。

黑马测试题及答案

黑马测试题及答案

黑马测试题及答案一、单项选择题(每题2分,共10题)1. 以下哪个选项是计算机编程语言?A. 英语B. 法语C. 汉语D. Python答案:D2. 互联网的全称是什么?A. 国际互联网B. 万维网C. 局域网D. 广域网答案:A3. 以下哪个选项不是计算机硬件?A. CPUB. 内存C. 硬盘D. 操作系统答案:D4. 计算机病毒的主要传播途径是什么?A. 电子邮件B. 网络下载C. 移动存储设备D. 以上都是5. 以下哪个选项是数据库管理系统?A. ExcelB. WordC. PowerPointD. Photoshop答案:A6. 以下哪个选项是计算机操作系统?A. WindowsB. LinuxC. AndroidD. 以上都是答案:D7. 以下哪个选项是计算机编程语言?A. JavaB. C++C. RubyD. 以上都是答案:D8. 以下哪个选项是计算机存储单位?A. 字节B. 千字节C. 兆字节D. 以上都是答案:D9. 以下哪个选项是计算机网络协议?B. FTPC. TCP/IPD. 以上都是答案:D10. 以下哪个选项是计算机图形处理单元?A. GPUB. CPUC. RAMD. ROM答案:A二、多项选择题(每题3分,共5题)1. 以下哪些选项是计算机硬件?A. 显示器B. 键盘C. 鼠标D. 操作系统答案:A, B, C2. 以下哪些选项是计算机软件?A. 操作系统B. 文字处理软件C. 图像编辑软件D. 游戏答案:A, B, C, D3. 以下哪些选项是计算机存储设备?A. 固态硬盘B. 机械硬盘D. 优盘答案:A, B, C, D4. 以下哪些选项是计算机编程语言?A. PHPB. JavaScriptC. SwiftD. Kotlin答案:A, B, C, D5. 以下哪些选项是计算机网络协议?A. SMTPB. POP3C. IMAPD. SNMP答案:A, B, C, D三、判断题(每题1分,共5题)1. 计算机病毒只能通过电子邮件传播。

黑马程序员基础测试题答案

黑马程序员基础测试题答案

黑马程序员基础测试题答案一、选择题1. 以下哪一项不是Java基本数据类型?答案:D. String解析:Java基本数据类型共有8种,分别为byte、short、int、long、float、double、char、boolean。

String是Java 中的一个类,不属于基本数据类型。

2. 在Java中,下列哪个操作符用于取模?答案:C. %解析:在Java中,取模操作符是%。

例如,5 % 2的结果为1。

3. 下列哪个方法可以实现字符串的截取?答案:B. substring(int start, int end)解析:substring(int start, int end)方法是String类中用于截取字符串的方法,其中start表示开始截取的位置,end表示结束截取的位置。

二、填空题1. Java中,定义一个整型变量需要使用______关键字。

答案:int2. 在Java中,数组的默认初始化值为______。

答案:0(对于数值类型),false(对于布尔类型),null (对于引用类型)3. 下列哪个方法可以实现字符串的拼接?答案:concat(String str)三、判断题1. 在Java中,所有的对象都继承自Object类。

答案:正确解析:在Java中,所有的类都直接或间接继承自Object类,Object类是Java类库中的根类。

2. Java中的方法可以重载,即可以有多个同名方法,但参数列表必须不同。

答案:正确解析:Java中的方法重载是指同一个类中可以有多个同名方法,但参数列表必须不同,包括参数个数和参数类型。

3. 在Java中,数组是一种引用类型。

答案:正确解析:在Java中,数组是一种引用类型,它可以存储多个相同类型的元素。

数组的声明、创建和初始化如下:```javaint[] arr = new int[10]; // 声明并创建一个整型数组,长度为10arr[0] = 1; // 初始化数组第一个元素```四、编程题1. 编写一个Java程序,实现以下功能:输入一个字符串,输出字符串中字母和数字的个数。

黑马基础测试题

黑马基础测试题

基础测试注:本试题满分为100分,60分及格,1-9题为必答题(共100分),10题为选答题(20分)1、环境变量path和classpath的作用是什么?(10分)path 的作用是:让JA V A开发工具能在各个盘符下都能运行,classpath的作用是让CLASS文件能在各个盘符下运行2、编写程序计算1+2+3+....+100的和。

(10分)class Test1{public static void main(String[] args){int sum = 0 ;for (int x = 1 ; x<101 ;x++ ){sum+=x;}System.out.println("1~100的之和为:"+sum);}}3、已知一个int数组, 编程从数组中获取最大数。

(10分)class Test1{public static void main(String[] args){int[] arr = new int[];System.out.println(getMax(int[] arr));}public static int getMax(int[] arr){int max = arr[0];for (int x = 1;x < arr.length ;x++ ){if (arr[x]>max){max = arr[x];}return max;}}}4、编写程序获取已知文件的扩展名. 注意: abc.txt的扩展名是txt, abc.java.txt的扩展名也是txt。

(10分)5、定义一个学生类, 需要有姓名, 年龄, 考试成绩三个成员属性. 属性(成员变量)需要私有并提供get, set方法, 可以通过构造函数进行初始化。

(10分)class Student{private String name;private int age ;private double achievement;Student(){}Student(String name ,int age ,double achievement ){ = name ;this.age = age ;this.achievement = achievement;}public void setName(String name){ = name ;}public void setAge(int age){this.age = age ;}public void setAchievement(double achievement){this.achievement = achievement ;}public String getName(){return name;}public int getAge(){return age;}public double getAchievement(){return achievement;}public void printStudent(){System.out.println("学生姓名:"+name+"年龄:"+age+"考试成绩:"+achievement);}}6、使用第5题定义的学生类创建5个对象, 属性可为任意值. 编程对这5个对象按成绩排序, 并将结果输出。

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

考试宣言:同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!我的考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。

单选2分/题,多选4分/题。

多选题不全对半分,全对满分。

1.下面说法正确的是()A. JVM就是Java虚拟机,包含java核心类库// JRE: JVM+Java library。

B. JRE就是java运行环境,包含java程序编译运行的工具环境// JDK:JRE+ToolsC. JDK就是java开发环境,javac是其中的一个工具D. 功能范围:JDK > JVM > JRE2.下面的说法正确的是( )A. Java 语言是面向对象的、解释执行的网络编程语言。

B. Java 语言具有可移植性,是与平台无关的编程语言。

C. Java 语言可对内存垃圾自动收集。

D. Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。

3.给定java代码,如下:public byte count(byte b1, byte b2){return ____;}要使这段代码能够编译成功,横线处可以填入A. (byte)(b1-b2) //返回值类型为byte,要求选项结果为byteB. b1-b2C. (byte)b1+b2D. (byte)b1/b24.关于类的命名,正确说法是()A. 可以由数字和英文拉丁字母组成,且可以任意排序//数字不能开头B. 命名要做到见名知意C. 如果是由多个单词组成,每个单词首字母大写D. 可以是Java已经定义过的关键字//囧5.关于main方法说法错误的是()A.main方法是java程序执行的入口B.main方法的方法体至少要有一行代码//可以没有代码C.main必须定义在一个类中D. main方法的定义格式为:public static void main(String[] args){}6.类中某方法定义如下:double fun(int a,int b){return a*1.0/b;}同一类内其它方法调用该方法的正确方式是:A. double a = fun(1,2);B. double a = fun(1.0,2.0);C. int x = fun(1,2);D. int x = fun(1.0,2.0);7.给定java代码,如下,编译运行,结果是()public static void main(String[] args){boolean flag;System.out.println(“flag”+flag);//局部变量需要先初始化再使用}A. 编译错误B. 编译通过,单出现运行时错误C. 正常运行,输出flag=falseD. 正常运行,输出flag=8.下面哪个关键字可以定义一个类()A. interfaceB. class //查看下面解释C. extendsD. implements在Oracle官网java英文原版教程,链接地址:https:///javase/tutorial/java/IandI/createinterface.html上有如下解释:In the Java programming language, an interface is a reference type,similar to a class, that can contain only constants,method signatures, default methods, static methods, and nested types. Method bodies exist only for default methods and static methods. Interfaces cannot be instantiated—they can only be implemented by classes or extended by other interfaces. Extension is discussed later in this lesson.9.byte类型的取值范围是()A. -256至255B. -255至255C. -128至127 //*/?#%¥@*&……D. -127至12810.下面关于java中方法,描述错误的是( )A.必须定义在类或者接口里面B.定义一个方法之前要明确该方法需要的参数和返回值类型C.方法可以提高代码复用性,提高程序运行的效率//可以提高编写代码的效率D.方法只有调用才会被执行11.下面程序执行的结果是?( )class Test{public static void main(String[] args){System.out.println(““+’a’+1); // +在这里是连接符,任何数据和字符串连接后,都是字符串}}A. 98B. a1C. 971D. 19712.for循环格式如下:for(表达式1;表达式2;表达式3){//code}下面描述错误的是()A. 表达式1处的代码会被执行多次//只能一次B. 表达式1处可以定义变量C. 表达式3用于决定循环是否应该结束//表达式2D. 表达式2的值可以是任意类型,也可以是boolean类型//只能是boolean13.以下选项可以正确创建一个长度为3的二维数组的是 ( )A.new int[2][3]B.new int[3][]C.new int[][3]D.以上答案都不对14.设以下是应用程序中定义的方法printBinary,若在其main方法中有方法调用语句printBinary(2),则输出的结果是 ( )。

static void printBinary(int i) {System.out.print(i + "的2进制数表示为:\t");for(int j = 31; j >=0; j--)if(((1 << j) & i) != 0)System.out.print("1");elseSystem.out.print("0");System.out.println();}A) 00000000000000000000000000000001B) 00000000000000000000000000000010 //自己算吧。

其实是求2的二级制表示形式C) 00000000000000000000000000001111D) 0000000000000000000000000000000015.下面关于return语句说法正确的是:()A.只能让方法返回数值B.方法都必须显式使用该关键字C.方法中可以有多句return //if第三种格式,每个条件下面都可以写一个return,单最多只能执行其中一个D.可以用来返回数值以外的类型16.下面程序执行的结果是?()int i = 100;while(true){if (i++ > 100){break;}System.out.println(i);}// continue(跳出本次循环) , break(跳出,结束本循环) , return(跳出,结束方法)A. 100B. 101C. 102D. 报错17.下面关于Java语言跨平台说法错误的是:A. java语言编写的程序,一次编译后,可以在多个系统平台上运行。

B. java语言垮平台依赖于java虚拟机C. java垮平台,java虚拟机也是垮平台的(不同系统平台使用相同的java虚拟机)D. 原理是java程序是通过java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟机,该系统就可以运行java程序。

18.下面程序的运行结果是 ( )int a=3, b=1;if(a==b) //false{System.out.println("a="+a);}A. a=1B. a=3C. 编译错误D. 正常运行但没有输出19.下面程序的运行后,结果正确的是:int a=1,b=2;int c=(a+b>3?a++:++b);//三元运算符如果不成立的话,那么a++不会执行,a还是1.A. a=2,b=3B. a=1,b=3C. a=1,b=2D. c=220.定义如下的二维数组b,下面的说法正确的是( )int b[][]={{1, 2, 3}, {4, 5},{6, 7, 8}}};A. b.length的值是3B. b[1].length的值是3 //2C. b[1][1]的值是5D. 二维数组b的第一个元素有3个子元素21.下面哪种类型的文件可以在java虚拟机中运行? ( )A..javaB..jreC..exeD..class22.下面程序的运行结果class Demo{public static int fun(int c){return c+=2; //因为return了,return的是4}public static void main(String[] args){int temp = fun(2);System.out.println(temp);}}A. 2B. 4C. 6D. 823.下列方法定义中,正确的是( )。

A) int x( ){ return true; } //返回值类型为int,不能返回booleanB) void x( ){ return true; } //没有返回值,不能返回booleanC) int x( ){ char ch='a'; return (int)ch; }D) int x( int a, int b){ return a+b; }24.下面数组定义正确的是()A. int [] arr ={23,45,65,78,89};B. int [] arr=new int[10]{}; //[数组]与{}不能共存C. int [] arr=new int[4]{3,4,5,6}; //[]与{}不能共存D. int [] arr={"a",23 ,45,6}; //byte, short,char ------>> int ‘a’会自动转换成97,但是String类型的a不会自动转换成9725.下面程序执行的结果是?()int x =1,y=1;if(x++==2 & ++y==2){x=7;}System.out.println("x="+x+" , y="+y);A. x=1 y=2B. x=7 y=1C. x=7 y=2D. x=2 y=226.JDK1.7之后,switch语句后括号里的表达式可以是以下哪种类型()//记住A. charB. StringC. longD. 枚举类型27.同一类中有两个以上方法同名称方法重载,Java语言规定():A. 不允许重载B. 重载方法的参数列表必须不同C. 重载方法的返回值类型必须不同//与返回值类型无关D. 重载方法的参数列表和返回值类型必须都不同。

相关文档
最新文档