概述
题目1
关于抽象类和接口叙述正确的是? ( )
A 抽象类和接口都能实例化的
B 抽象类不能实现接口
C 抽象类方法的访问权限默认都是public
D 接口方法的访问权限默认都是public
正确答案: D
解析
抽象类
如果一个类含有抽象方法那么这个类就是抽象类。
抽象类需要使用关键字abstract来声明。
抽象类中的抽象方法只需要声明,并不需要实现。
抽象类一定具有子类,并且子类必须覆写抽象类中的所有的抽象方法。
在使用abstract定义抽象方法时,抽象方法的权限不能为private,这是因为抽象方法必须被覆写,如果使用private来定义方法的权限,那么该方法无法被子类覆写,会出现错误
普通通类和抽象类的区别
实际上抽象类相比于普通类,只是在类定义的时候多定义了一个抽象方法,除了不能直接进行对象的实例化之外没有其它区别
题目2
下面属于java合法变量定义的是?
A final
B 1var1
C _var2
D var3&
正确答案: C
解析
标识符可以包括这4种字符:
字母、数字,下划线、$、
开头不能是数字;
不能是关键字
A.final 是关键字
B.不能以数字做首写
C.首写字母可以为下划线
D.符号只能使用美元符合下划线,不能使用&
题目3
运行下面代码,输出的结果是()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22class A{
public A(){
System.out.println("class A");
}
{ System.out.println("I'm A class"); }
static { System.out.println("class A static"); }
}
public class B extends A{
public B(){
System.out.println("class B");
}
{
System.out.println("I'm B class");
}
static {
System.out.println("class B static");
}
public static void main(String[] args){
new B();
}
}
A
1
2
3
4
5
6class A static
class B static
I'm A class
class A
I'm B class
class B
B
1
2
3
4
5
6class A static
I'm A class
class A
class B static
I'm B class
class B
C
1
2
3
4
5
6class A static
class B static
class A
I'm A class
class B
I'm B class
D
1
2
3
4
5
6class A static
class A
I'm A class
class B static
class B
I'm B class
正确答案: A
解析
Java程序初始化顺序:
父类的静态代码块
子类的静态代码块
父类的普通代码块
父类的构造方法
子类的普通代码块
子类的构造方法
题目4
关于如下程序的描述哪个是正确的?( )
1
2
3
4
5
6public class Person{
static int arr[] = new int[5];
public static void main(String a[]){
System.out.println(arr[0]);
}
}
A 编译将产生错误
B 编译时正确,但运行时将产生错误
C 正确,输出0
D 正确,输出 null
正确答案: C
解析
数组会自动初始化
数组无论是在定义为实例变量还是局部变量,若没有初始化,都会被自动初始化
Java中对于整型数组默认初始化0。
对字符数组初始化空格。
对对象数组初始化为null。
成员变量有默认值
只有类的成员变量才有默认初始值。
局部变量必须手动赋值
局部变量必须手动赋初值,否则编译报错
题目5
JSP分页代码中,哪个步骤次序是正确的?
A 先取总记录数,得到总页数,最后显示本页的数据。
B 先取所有的记录,得到总页数,再取总记录数,最后显示本页的数据。
C 先取总页数,得到总记录数,再取所有的记录,最后显示本页的数据。
D 先取本页的数据,得到总页数,再取总记录数,最后显示所有的记录。
正确答案: A
解析
不足:JSP方面的我还不是很了解
先取总记录数,得到总页数,再取所有的记录,最后显示本页的数据
题目6
下面关于程序编译说法正确的是()
A java语言是编译型语言,会把java程序编译成二进制机器指令直接运行
B java编译出来的目标文件与具体操作系统有关
C java在运行时才进行翻译指令
D java编译出来的目标文件,可以运行在任意jvm上
正确答案: C
解析
A:java编译成的是字节码,再被各系统的jvm翻译成本系统可以识别的机器码,这就是java一次编程多平台应用的跨平台性
B:java源文件生成的是class文件,与系统无关
C:注意字节码和机器码不是一回事 java程序在运行时字节码才会被jvm翻译成机 器码,所以说java是解释性语言
D:注意jvm的版本,好比人穿裤子,一条裤子能被任何人穿上吗
低版本的jvm没有办法运行高版本的java代码
题目7
下面说法正确的是?()
A 调用Thread的sleep()方法会释放锁,调用wait()方法不释放锁
B 一个线程调用yield方法,可以使具有相同优先级线程获得处理器
C 在Java中,高优先级的可运行的线程会抢占低优先级线程的资源
D java中,线程可以调用yield方法使比自己低优先级的线程运行
正确答案: BC
解析
yield()让当前正在运行的线程回到可运行状态,以允许具有相同优先级的其他线程获得运行的机会。因此,使用yield()的目的是让具有相同优先级的线程之间能够适当的轮换执行。但是,实际中无法保证yield()达到让步的目的,因为,让步的线程可能被线程调度程序再次选中。
参考资料
最后
以上就是深情毛巾为你收集整理的java抽象类数组初始化,2019年11月2日 java 1的全部内容,希望文章能够帮你解决java抽象类数组初始化,2019年11月2日 java 1所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复