java选择题《每日一练》
文章目录
- (C#、JAVA)扩展方法能访问被扩展对象的public成员
正确答案: A 你的答案: A (正确)
能
不能
子类方法能否访问父类的public成员
- Java 语言中创建一个对象使用的关键字是()
正确答案: C 你的答案: C (正确)
class
interface
new
create
没有女朋友怎么办?new一个
- 以下关于Integer与int的区别错误的是
正确答案: D 你的答案: C (错误)
int是java提供的8种原始数据类型之一
Integer是java为int提供的封装类
int的默认值为0
Integer的默认值为1
八大基本数据类型(byte,short,int,long,double,float,char,boolean)
Integer是 int 包装类
Integer 是类 默认是null ,表示的对象,用一个引用指向这个对象
int 是基本数据类型,直接存储值, 默认是 0
- 下列不属于访问控制符的是()
正确答案: D 你的答案: D (正确)
public
private
protected
static
public 公有 private私有 protected受保护
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块。
- 在某个类A中存在一个方法:void set(int x),以下不能作为这个方法的重载的声明的是()
正确答案: A 你的答案: A (正确)
void set(int y)
int set(int x,double y)
double set(int x,int y)
void set(int x,int y)
方法重载:方法名称相同,参数列表不同(可以是参数的类型,个数,顺序不同)
- 为初始化其成员变量,每个类都定义的方法是()
正确答案: C 你的答案: C (正确)
方法
main
构造方法
对象
构造方法的作用是对象初始化(属性初始化)
- 类 ABC 定义如下:
1 . public class ABC{
2 . public int max( int a, int b) { }
3 .
4 . }
将以下哪个方法插入行 3 是不合法的。( )。
正确答案: B 你的答案: B (正确)
public float max(float a, float b, float c){ }
public int max (int c, int d){ }
public float max(float a, float b){ }
private int max(int a, int b, int c){ }
重载:
1、 重载是在编译器通过方法中形参的静态类型确定调用方法版本的过程。
2、 重载是多态在编译期的表现形式
3、 重载的判定只有两个条件(其他的条件都不能作为判定):
1、 方法名一致
2、形参列表不同
重写:满足一个规则:两同两小一大
1、两同:方法名和形参列表一致
2、两小:重写方法的返回值(引用类型)和抛出异常,要和被重写方法的返回值(引用类型)和抛出异常相同或者是其子类。注意,一旦返回值是基本数据类型,那么重写方法和被重写方法必须相同,且不存在自动拆装箱的问题。
3、一大:重写方法的访问修饰符大于等于被重写方法的访问修饰符。
- 关于下面程序 ThisTest .java 运行结果 说法正确的是 : ( )
public class ThisTest {
public static void main(String args[]) {
String x=“7”;
int y = 2;
int z=2;
System.out.println(x+y+z);
}
}
正确答案: B 你的答案: B (正确)
11
722
22
程序有编译错误
+号两边如果有一边为字符类型 则为字符串连接
如果变为y+z+x 则等价于(y+z)+x 输出47
- 以下关于Object类的说法正确的是()
正确答案: A 你的答案: C (错误)
Java中所有的类都直接或间接继承自Object,无论是否明确的指明,无论其是否是抽象类。
Java中的接口(interface)也继承了Object类
利用“==”比较两个对象时,Java调用继承自Object的equals方法,判断是否相等。
如果类的定义中没有重新定义toString()方法,则该类创建的对象无法使用toStrig()
A,Object是所有类的直接或者间接父类。
B,接口没有继承Object类。(一旦继承,Object中可以有实例方法的)
C,Object的equals方法,只有一句话,return this==object。这句话说反了。
D,和A一样,都是Object的子类了,肯定有Object的方法:hashCode、equals、toString、clone、notify、notifyall、wait、finalize、getClass
- 在 JAVA 编程中, Java 编译器会将 Java 程序转换为( )
正确答案: A 你的答案: A (正确)
字节码
可执行代码
机器代码
以上都不对
编译器将java源代码编译成字节码class文件
类加载到JVM里面,执行引擎把字节码转为可执行代码
执行的过程,再把可执行代码转为机器码,由底层的操作系统执行。
C++是编译型语言,源码直接变成机器码。
Java是解释型语言,会先生成中间码(字节码),然后由解释器(JVM内置)解释字节码到机器码。
- Java 源程序文件的扩展名为()
正确答案: A 你的答案: A (正确)
.java
.class
.exe
.jar
java中源文件的后缀为.java,经过javac.exe编译后生成字节码文件,后缀为.class,再经过java.exe编译为可执行文件,后缀为.exe。
- 一般用()创建InputStream对象,表示从标准输入中获取数据,用()创建OutputStream对象,表示输出到标准输出设备中。
正确答案: A 你的答案: C (错误)
System.in System.out
System.out System.in
System.io.in System.io.out
System.io.out System.io.in
System.in 和 System.out 是java中的标准输入输出流,一般情况下代表从控制台输入和输出到控制台
- 下列选项中符合Java命名规则的标识符是()
正确答案: D 你的答案: D (正确)
2japro
&Class
const
_123
Java 标识符有如下命名规则:
由26个英文字母大小写,数字:0-9 符号:_ $ 组成
标识符应以字母、_ 、$开头。
标识符不能是关键字。
Java中严格区分大小写
- 如下代码的 结果是什么 ?
class Base {
Base() {
System.out.print(“Base”);
}
}
public class Alpha extends Base {
public static void main( String[] args ) {
new Alpha();
//调用父类无参的构造方法
new Base();
}
}
在执行new Alpha()时,会先执行父类的构造方法,在执行相应的子类的构造方法,所以此处会打印Base,在执行new Base()时,会直接执行Base中无参构造器的代码,再输出Base,所以选B
- 下面代码运行结果是?
public class Test
{
static boolean foo(char c)
{
System.out.print©;
return true;
}
public static void main( String[] argv )
{
int i = 0;
for ( foo(‘A’); foo(‘B’) && (i < 2); foo(‘C’))
{
i++ ;
foo(‘D’);
}
}
}
正确答案: A 你的答案: A (正确)
ABDCBDCB
ABCDABCD
Compilation fails.
An exception is thrown at runtime.
考for循环的执行顺序,1.先执行初始化条件,2.执行判断条件,3.如果满足2的条件,执行循环体中代码;4.执行foo(‘c’), 5.初始化条件不在执行,友从2开始执行
- 以下代码的输出的正确结果是
public class Test {
public static void main(String args[]) {
String s = “祝你考出好成绩!”;
System.out.println(s.length());
}
}
正确答案: D 你的答案: D (正确)
24
16
15
8
length得到的是字符,不是字节。
如果是s.getBytes(“GBK”).length就是求的字节数。如果是GBK,一个中文字符占2字节,如果是UTF-8则是3个字节
- 下列关于异常处理的描述中,错误的是()。
正确答案: D 你的答案: A (错误)
程序运行时异常由Java虚拟机自动进行处理
使用try-catch-finally语句捕获异常
可使用throw语句抛出异常
捕获到的异常只能在当前方法中处理,不能在其他方法中处理
捕获到的异常不仅可以在当前方法中处理,还可以将异常抛给调用它的上一级方法来处理。
- 类方法中可以直接调用对象变量?
正确答案: B 你的答案: A (错误)
正确
错误
静态方法中不能调用对象的变量,因为静态方法在类加载时就初始化,对象变量需要在新建对象后才能使用
- 语句:char foo=‘中’,是否正确?(假设源文件以GB2312编码存储,并且以javac – encoding GB2312命令编译)
正确答案: A 你的答案: A (正确)
正确
错误
这在java中是正确的,在C语言中是错误的,java的char类型占两个字节,默认使用GBK编码存储。这种写法是正确的,此外java还可以用中文做变量名。
- This调用语句必须是构造函数中的第一个可执行语句。
正确答案: B 你的答案: A (错误)
正确
错误
this()才必须是构造函数中的第一个可执行语句,用this调用语句并不需要。
- Thread. sleep()是否会抛出checked exception?
正确答案: A 你的答案: B (错误)
会
不会
Thread.sleep() 和 Object.wait(),都可以抛出 InterruptedException。这个异常是不能忽略的,因为它是一个检查异常(checked exception)
- 指出下列程序运行的结果:
public class Example{
String str=new String(“tarena”);
char[]ch={‘a’,‘b’,‘c’};
public static void main(String args[]){
Example ex=new Example();
ex.change(ex.str,ex.ch);
System.out.print(ex.str+" and ");
System.out.print(ex.ch);
}
public void change(String str,char ch[]){
//引用类型变量,传递的是地址,属于引用传递。
str=“test ok”;
ch[0]=‘g’;
}
}
正确答案: B 你的答案: B (正确)
tarena and abc
tarena and gbc
test ok and abc
test ok and gbc - 以下对选择语句描述错误的是()
正确答案: A 你的答案: B (错误)
根据某一条件重复执行一部分代码直到满足终止条件为止
可以根据条件控制程序流程,改变程序执行的顺序
选择语句可以嵌套使用
当条件满足时就会执行相应的语句
流程控制语句分类:
顺序结构
选择结构:if语句、switch语句
循环结构:while语句、for语句
- 有一个源代码,只包含import java.util.* ; 这一个import语句,下面叙述正确的是? ( )
正确答案: C 你的答案: C (正确)
只能写在源代码的第一句
可以访问java/util目录下及其子目录下的所有类
能访问java/util目录下的所有类,不能访问java/util子目录下的所有类
编译错误
java.util.*,只能读取其目录下的类,不能读取其子目录下的类。
因为其根目录和子目录下可能有同名类,若都能读取,则会混淆。
- 某程序要求每次输入只能是正整数,并且每次输入的数值要求必须是100的倍数且小于等于500,则下列哪个是正确的无效等价类( )
正确答案: D 你的答案: D (正确)
(0,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞);
(500,+∞)
(500,+∞)、任意大于0小于500的非100倍数的整数;
(-∞,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞);
无效等价类是指对于软件规格说明而言,是没有意义的、不合理的输入数据集合。利用无效等价类可以找出程序异常说明情况,检查程序的功能和性能的实现是否有不符合规格说明要求的地方。
有效等价类是指输入数据完全满足程序输入的规格说明,是有效、有意义的输入数据所构成的集合。利用有效等价类可以检验程序是否满足规格说明所规定的功能和性能。
- Java的体系结构包含( )。
正确答案: A B C D 你的答案: B C D (错误)
Java编程语言
Java类文件格式
Java API
JVM
当我们编写并运行一个Java程序时,就同时运用了这四种技术,用Java程序设计语言编写源代码,把它编译成Java.class文件格式,然后再在Java虚拟机中运行class文件。当程序运行的时候,它通过调用class文件实现了Java API的方法来满足程序的Java API调用
- 以下哪些内存区域属于JVM规范?( )
正确答案: A D E 你的答案: A B C D E (错误)
方法区
实例变量
静态变量
程序计数器
虚拟机栈
JVM内存区:程序计数器、虚拟机栈、本地方法栈、堆、方法区(包括常量池)。
不属于JVM内存区:直接内存(Direct Memory),用户I/O操作
- 下列关于系列化和反序列化描述正确的是:
正确答案: A B 你的答案: A C (错误)
序列化是将数据转为n个 byte序列的过程
反序列化是将n个 byte转换为数据的过程
将类型int转换为4 byte是反序列化过程
将8个字节转换为long类型的数据为序列化过程
把你看得懂的转换为看不懂的,就是序列化。
把你看不懂的转换为看得懂的,就是反序列化。
- 以下哪种方式实现的单例是线程安全的
正确答案: A B C D 你的答案: B C (错误)
枚举
静态内部类
双检锁模式
饿汉式 - 有关finally语句块说法正确的是( )
正确答案: A B C 你的答案: A C (错误)
不管catch是否捕获异常,finally语句块都是要被执行的
在try语句块或catch语句块中执行到System.exit(0)直接退出程序
finally块中的return语句会覆盖try块中的return返回
finally 语句块在 catch语句块中的return语句之前执行
D.不是return之前,是return执行完成之前,return表达式的结果会暂时保存起来,不会被改变
java选择题《每日一练》相关推荐
- 牛客java选择题每日打卡Day17
牛客java选择题每日打卡Day17
- 牛客java选择题每日打卡Day5
牛客java选择题每日打卡Day5
- 牛客java选择题每日打卡Day8
牛客java选择题每日打卡Day8
- Java基础每日一练—第4天:加减乘除的运算
☆引言☆ 大家好!我是痛而不言笑而不语的浅伤.关注博主不迷路,带你一起共进步.今天是Java基础每日一练第4天,我们大家一起来做今天的Java零基础开始精进的练习题.还是那句话,每日一练,我们共同学习 ...
- java将naso注册成计算机服务_2018计算机二级考试Java语言每日一练 8月2日
1.软件测试的目的是 A.评估软件可靠性 B.发现并改正程序中的错误 C.改正程序中的错误 D.发现程序中的错误 2.软件测试的目的是 A.评估软件可靠性 B.发现并改正程序中的错误 C.改正程序中的 ...
- Java语言每日一练—第11天:最优选择2
- Java语言每日一练—第10天:谁是胖子
- Java语言每日一练—第9天:根据输入的数据判断是星期几
- Java语言每日一练—第14天:银行收入计算
- java 矩阵题目_java练习本(原每日一练)(20190517)
名人名言 昨日翻译 "You will face many defeats in life, but never let yourself be defeated." --Maya ...
最新文章
- 《Adobe Acrobat DC经典教程》—第1章1.11节在阅读模式下查看PDF文件
- 猜数字游戏:随机键盘录入一个数字,看是否能猜正确
- SpringBoot简单集成Redis,实现简单查询
- JavaEE的13种核心技术规范
- eclipse m2e配置_使用此首选项可加快Eclipse m2e配置
- cmd在执行hadoop version时出现系统找不到指定的路径。 Error: JAVA_HOME is incorrectly set
- c语言链表递增,[C语言][PTA][2019Fall] 6-28 递增的整数序列链表的插入 (15 point(s))
- 高性能网站建设指南——网站优化的14条建议
- 随机增量法:bzoj 1336 bzoj 1337 最小圆覆盖
- “土夅”应尽快加入汉字编码
- Java刷题面试系列习题(三)
- vue结合videojs实现视频播放组件
- Lambda表达详细介绍、全的不能全了!!
- 《文言文复兴系列 5 人之道》(江湖一剑客)
- iOS之深入解析插件化架构
- TP-LINK TL-WDN7200H ubuntu驱动安装
- 一文教你分清持续集成,持续交付,持续部署
- HCNP路由交换学习指南(第一章)学习笔记
- 百度云直播的操作流程
- [高考真题]2012年普通高等学校招生全国统一考试 英语(四川卷)