1.
以下有关构造方法的说法,正确的是:()
A
一个类的构造方法可以有多个
B
构造方法在类定义时被调用
C
构造方法只能由对象中的其他方法调用
D
构造方法可以和类同名,也可以和类名不同
正确答案:A
官方解析:
A选项是函数重载的体现,一个类可以有多个参数列表不同的构造方法。A选项正确。
B选项,构造方法在对象被初始化时调用。B选项错误。
C选项,构造方法只能在对象被初始化时调用,不能由其他方法调用。
D选项,构造方法必须与类名相同。
知识点:Java
2.
下列关于Java类中方法的定义,正确的是()
A
若代码执行到return语句,则将当前值返回,而且继续执行return语句后面的语句。
B
只需要对使用基本数据类型定义的属性使用getter和setter,体现类的封装性。
C
方法的返回值只能是基本数据类型。
D
在同一个类中定义的方法,允许方法名称相同而形参列表不同。
正确答案:D
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
13.
socket编程中,以下哪个socket的操作是不属于服务端操作的()?
A
accept
B
recieve
C
getInputStream
D
close
正确答案:C
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
14.
尝试编译以下程序会产生怎么样的结果?()
123456789publicclassMyClass{longvar;publicvoidMyClass(long param){var= param;}//(1)publicstaticvoidmain(String[] args){MyClass a, b;
a =newMyClass();//(2)
b =newMyClass(5);//(3)}}A
编译错误将发生在(1),因为构造函数不能指定返回值
B
编译错误将发生在(2),因为该类没有默认构造函数
C
编译错误将在(3)处发生,因为该类没有构造函数,该构造函数接受一个int类型的参数
D
该程序将正确编译和执行
正确答案:C
官方解析:本题需要注意MyClass并不是构造方法,只是一个参数为long类型,返回值为void的普通方法,需要实例化对象来调用,答案选择C
知识点:Java、Java工程师、2020
15.JDK1.8版本之前,抽象类和接口的区别,以下说法错误的是
A
接口是公开的,里面不能有私有的方法或变量,是用于让别人使用的,而抽象类是可以有私有方法或私有变量的。
Babstractclass 在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface,实现多重继承。接口还有标识(里面没有任何方法,如Remote接口)和数据共享(里面的变量全是常量)的作用。
C
在abstractclass 中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是 staticfinal的,不过在 interface中一般不定义数据成员),所有的成员方法默认都是 publicabstract 类型的。
Dabstractclass和interface所反映出的设计理念不同。其实abstractclass表示的是"has-a"关系,interface表示的是"is-a"关系。
正确答案:D
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java、安卓工程师、2018
20.
下面代码输出是?
enumAccountType{SAVING,FIXED,CURRENT;privateAccountType(){System.out.println("It is a account type");}}classEnumOne{publicstaticvoidmain(String[]args){System.out.println(AccountType.FIXED);}}A
编译正确,输出”It is a account type”once followed by”FIXED”
B
编译正确,输出”It is a account type”twice followed by”FIXED”
C
编译正确,输出”It is a account type”thrice followed by”FIXED”
D
编译正确,输出”It is a account type”four times followed by”FIXED”
E
编译错误
正确答案:C
参考答案:答案:C 枚举类有三个实例,故调用三次构造方法,打印三次It is a account type
知识点:Java
21.
下面哪一项不是加载驱动程序的方法?
A
通过DriverManager.getConnection方法加载
B
调用方法 Class.forName
C
通过添加系统的jdbc.drivers属性
D
通过registerDriver方法注册
正确答案:A
参考答案:答案:ADriverManager.getConnection方法返回一个Connection对象,这是加载驱动之后才能进行的
知识点:Java
28.Java类Demo中存在方法func1、func2、func3和func4,请问该方法中,哪些是不合法的定义?()publicclassDemo{floatfunc1(){int i=1;return;}floatfunc2(){short i=2;return i;}floatfunc3(){long i=3;return i;}floatfunc4(){double i=4;return i;}}A
func1
B
func2
C
func3
D
func4
正确答案:AD
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
29.
有关线程的叙述正确的是()A
可以获得对任何对象的互斥锁定
B
通过继承Thread类或实现Runnable接口,可以获得对类中方法的互斥锁定
C
线程通过使用synchronized关键字可获得对象的互斥锁定
D
线程调度算法是平台独立的
正确答案:CD
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
30.以下语句返回值为 true 的是()
A
a1==a2
B
d1==d2
C
b1==b2
D
c1==c2
正确答案:AB
参考答案:选A,B. Integer a1 =17; 语句执行的是valueOf()方法 publicstaticIntegervalueOf(int i){if(i >=IntegerCache.low && i <=IntegerCache.high)returnIntegerCache.***[i +(-IntegerCache.low)];returnnewInteger(i);} 对于-128到127之间的数,Integer直接从数组中取, 故a1, a2指向的是同一个对象,A正确. 其余都是new出来的对象, 显然地址都不相同.int类型与Integer类型比较时, 先将Integer拆箱, 再比较值, 故B正确.
知识点:Java
1.
以下关于继承的叙述正确的是
A
在Java中类只允许单一继承
B
在Java中一个类不能同时继承一个类和实现一个接口
C
在Java中接口只允许单一继承
D
在Java中一个类只能实现一个接口
正确答案:A
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java、Java工程师、2018
2.
下列程序执行后结果为()classA{publicintfunc1(int a,int b){return a - b;}}classBextendsA{publicintfunc1(int a,int b){return a + b;}}publicclassChildClass{publicstaticvoidmain(String[] args){A a =newB();B b =newB();System.out.println("Result="+ a.func1(100,50));System.out.println("Result="+ b.func1(100,50));}}AResult=150Result=150BResult=100Result=100CResult=100Result=150DResult=150Result=100
正确答案:A
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
3.
对接口的描述正确的是()A
一个类可以实现多个接口
B
接口可以有非静态的成员变量
C
在jdk8之前,接口可以实现方法
D
实现接口的任何类,都需要实现接口的方法
正确答案:A
官方解析:
选项B:接口中成员变量只能是静态常量,它默认被publicstaticfinal修饰。
选项C: JDK8之后,接口中才可以定义有具体实现的方法,但它要么是使用default修饰的默认方法要么是static修饰的类方法。
选项D:所有实现接口的的普通类都需要实现接口的方法,但如果实现接口的是抽象类则不需要实现所有方法。
知识点:Java
8.J2EE中,当把来自客户机的HTTP请求委托给servlet时,会调用HttpServlet的( )方法
A
service
B
doget
C
dopost
D
init
正确答案:A
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
9.
以下叙述正确的是
A
实例方法可直接调用超类的实例方法
B
实例方法可直接调用超类的类方法
C
实例方法可直接调用子类的实例方法
D
实例方法可直接调用本类的实例方法
正确答案:D
参考答案:A错误,类的实例方法是与该类的实例对象相关联的,不能直接调用,只能通过创建超类的一个实例对象,再进行调用 B错误,当父类的类方法定义为private时,对子类是不可见的,所以子类无法调用 C错误,子类具体的实例方法对父类是不可见的,所以无法直接调用, 只能通过创建子类的一个实例对象,再进行调用 D正确,实例方法可以调用自己类中的实例方法
知识点:Java、Java工程师、2017
10.publicclassIfTest{publicstaticvoidmain(String[]args){int x=3;int y=1;if(x=y)System.out.println("Not equal");elseSystem.out.println("Equal");}}
下面结果输出是?
AThe output is “Equal”
BThe output in “NotEqual”
CAn error at line 5 causes compilation tofall.DThe program executes but does not print a message.
正确答案:C
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
11.
关于下面的程序,说法正确的是:
123456789101112131.classStaticStuff2{3.staticint x =10;4.5.static{ x +=5;}6.7.publicstaticvoidmain(String args[])8.{9.System.out.println(“x = ” +StaticStuff.x);10.}11.static12.{x /=3;}13.}A
第5行和12行不能编译,因为该方法没有方法名和返回值。
B
第12 行不能编译,因为只能有一个static初始化块。
C
代码编译并执行,输出结果x =10.D
代码编译并执行,输出结果 x =5.E
代码编译并执行,输出结果 x =15.
正确答案:D
参考答案:选D。考察的是代码执行的顺序。 第5、12行属于static修饰的静态代码块。所以A、B说法错误。 静态代码块以及静态变量自上而下的顺序依次随着类加载而执行,所以依据题目的变量初始化: x初始为10 x+5赋值x,结果为15 x/3赋值给x,结果为5
知识点:Java
12.
下面代码的运行结果是()
publicstaticvoidmain(String[] args){String s;System.out.println("s="+s);}A
代码编程成功,并输出”s=”
B
代码编译成功,并输出”s=null”
C
由于String s没有初始化,代码不能编译通过。
D
代码编译成功,但捕获到NullPointException异常
正确答案:C
参考答案:局部变量没有默认值
知识点:Java
13.
以下代码执行后输出结果为( )
1234567891011121314publicclassClassTest{String str =newString("hello");char[] ch ={'a','b','c'};publicvoidfun(String str,char ch[]){
str="world";
ch[0]='d';}publicstaticvoidmain(String[] args){ClassTest test1 =newClassTest();
test1.fun(test1.str,test1.ch);System.out.print(test1.str +" and ");System.out.print(test1.ch);}}A
hello and dbc
B
world and abc
C
hello and abc
D
world and dbc
正确答案:A
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
14.
下列说法正确的是
A
在类方法中可用this来调用本类的类方法
B
在类方法中调用本类的类方法可直接调用
C
在类方法中只能调用本类的类方法
D
在类方法中绝对不能调用实例方法
正确答案:B
参考答案:在类方法中调用本类的类方法可直接调用。 实例方法也叫做对象方法。 类方法是属于整个类的,而实例方法是属于类的某个对象的。 由于类方法是属于整个类的,并不属于类的哪个对象,所以类方法的方法体中不能有与类的对象有关的内容。即类方法体有如下限制: (1) 类方法中不能引用对象变量; (2) 类方法中不能调用类的对象方法; (3) 在类方法中不能使用super、this关键字。 (4)类方法不能被覆盖。 如果违反这些限制,就会导致程序编译错误。 与类方法相比,对象方法几乎没有什么限制: (1) 对象方法中可以引用对象变量,也可以引用类变量; (2) 对象方法中可以调用类方法; (3) 对象方法中可以使用super、this关键字。
知识点:Java、Java工程师、2017
15.
以下选项中循环结构合法的是:Awhile(int i<7){i++;System.out.println("i is "+i);}Bint j=3;while(j){System.out.println("j is "+j);}Cint j=0;for(int k=0;j+k!=10;j++,k++){System.out.println("j is "+j+"k is"+k);}Dint j=0;do{System.out.println("j is "+j++);if(j==3){continue loop;}}while(j<10);
正确答案:C
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
16.
面向对象方法的多态性是指()
A
一个类可以派生出多个特殊类
B
一个对象在不同的运行环境中可以有不同的变体
C
针对一消息,不同的对象可以以适合自身的方式加以响应
D
一个对象可以是由多个其他对象组合而成的
正确答案:C
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:C++、Java、Java工程师、C++工程师、iOS工程师、安卓工程师、运维工程师、前端工程师、算法工程师、测试工程师、2019
17.What is the result of compiling and executing the following fragment of code:123456789Boolean flag =false;if(flag =true){System.out.println("true");}else{System.out.println("false");}AThe code fails tocompile at the “if” statement.
BAn exception is thrown at run-time at the “if” statement.
CThe text“true” is displayed.
DThe text“false”is displayed.
ENothing is displayed.
正确答案:C
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
18.12345678910111213141516171819202122232425262728classBase{publicvoidmethod(){System.out.println("Base");}}classSonextendsBase{publicvoidmethod(){System.out.println("Son");}publicvoidmethodB(){System.out.println("SonB");}}publicclassTest01{publicstaticvoidmain(String[] args){Base base =newSon();
base.method();
base.methodB();}}
问这个程序的输出结果。
ABaseSonBBSonSonBCBaseSonSonBD
编译不通过
正确答案:D
参考答案:答案:DBase base =newSon(); 这句new 了一个派生类,赋值给基类,所以下面的操作编译器认为base对象就是Base类型的 Base类中不存在methodB()方法,所以编译不通过
知识点:Java
23.
假定Base b =newDerived(); 调用执行b.methodOne()后,输出结果是什么?
publicclassBase{publicvoidmethodOne(){System.out.print("A");methodTwo();}publicvoidmethodTwo(){System.out.print("B");}}publicclassDerivedextendsBase{publicvoidmethodOne(){super.methodOne();System.out.print("C");}publicvoidmethodTwo(){super.methodTwo();System.out.print("D");}}AABDCBABCABCDDABC
正确答案:A
你的答案:D
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java、测试工程师、2018、测试开发工程师
24.Java语言中,方法的重写(Overriding)和重载(Overloading)是多态性的不同表现。下边哪些说法是对的?
A
重写是父类与子类之间多态性的一种表现
B
重写是一个类中多态性的一种表现
C
重载是一个类中多态性的一种表现
D
重载是父类与子类之间多态性的一种表现
正确答案:AC
参考答案:A and C 重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。 Overloaded的方法是可以改变返回值的类型。
知识点:Java
25.final、finally、finalize三个关键字的区别是()
Afinal是修饰符(关键字)可以修饰类、方法、变量
Bfinally在异常处理的时候使用,提供finally块来执行任何清除操作
C
finalize是方法名,在垃圾收入集器将对象从内存中清除出去之前做必要的清理工作
Dfinally和finalize一样都是用于异常处理的方法
正确答案:ABC
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
26.
有关静态初始化块说法正确的是?
A
无法直接调用静态初始化块
B
在创建第一个实例前或引用任何静态成员之前,将自动调用静态初始化块来初始化
C
静态初始化块既没有访问修饰符,也没有参数
D
在程序中,用户可以控制何时执行静态初始化块
正确答案:ABC
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
27.
常用的servlet包的名称是?
A
java.servlet
B
javax.servlet
C
servlet.http
D
javax.servlet.http
正确答案:BD
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
28.CMS垃圾回收器在那些阶段是没用用户线程参与的
A
初始标记
B
并发标记
C
重新标记
D
并发清理
正确答案:AC
官方解析:
CMS收集器是一种以获取最短回收停顿时间为目标的收集器,它是基于标记清除算法实现的,它的运作过程相对于其他收集器来说要更复杂一些,整个过程分为四个步骤,包括:初始标记、并发标记、重新标记、并发清除。其中初始标记、重新标记这两个步骤需要暂停整个JVM。
初始标记仅仅只是标记一下GCRoots能直接关联到的对象,速度很快。
并发标记阶段就是从GCRoots的直接关联对象开始遍历整个对象图的过程,这个过程耗时较长但是不需要停顿用户线程,可以与垃圾收集线程一起并发运行。
重新标记阶段则是为了修正并发标记期间,因用户程序继续运作而导致标记产生变动的那一部分对象的标记记录,这个阶段的停顿时间通常会比初始标记阶段稍长一些,但也远比并发标记阶段的时间短。
并发清除阶段,清理删除掉标记阶段判断的已经死亡的对象,由于不需要移动存活对象,所以这个阶段也是可以与用户线程同时并发的。
示意图如下:
综上所述,答案选择AC。
知识点:Java、Java工程师、安卓工程师、测试工程师、2019、测试开发工程师
29.Which statement declares a variable a which is suitable for referring toan array of 50 string objects?
下面哪个Java语句声明了一个适合于创建50个字符串对象数组的变量?
Achar a[][];BString a[];CString[] a;DObject a[50];EString a[50];FObject a[];
正确答案:BCF
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java、数组
7.
以下对选择语句描述错误的是()
A
根据某一条件重复执行一部分代码直到满足终止条件为止
B
可以根据条件控制程序流程,改变程序执行的顺序
C
选择语句可以嵌套使用
D
当条件满足时就会执行相应的语句
正确答案:A
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:C++、Java、C语言
8.
下列哪些语句关于内存回收的说明是正确的?()A
程序员必须创建一个线程来释放内存
B
内存回收程序负责释放无用内存
C
内存回收程序允许程序员直接释放内存
D
内存回收程序可以在指定的时间释放内存对象
正确答案:B
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
9.
执行以下程序后的输出结果是()
publicclassTest{publicstaticvoidmain(String[] args){StringBuffer a =newStringBuffer("A");StringBuffer b =newStringBuffer("B");operator(a, b);System.out.println(a +","+ b);}publicstaticvoidoperator(StringBuffer x,StringBuffer y){
x.append(y); y = x;}}AA,ABA,BCB,BDAB,B
正确答案:D
参考答案: StringBuffer a =newStringBuffer("A");StringBuffer b =newStringBuffer("B"); 此时内存中的状态如下图所示: publicstaticvoidoperator(StringBuffer x,StringBuffer y){ x.append(y); y = x;} 进入如下方法后,内存中的状态为: x.append(y); 这条语句执行后,内存的状态为: y = x; 这条语句执行后,内存的状态为: 当operator方法执行完毕后内存中的状态为:因为方法执行完毕,局部变量消除。 有内存中的状态,可以知道最后的结果。
知识点:Java、Java工程师、2016
10.
下面代码运行结果是?
publicclassTest{staticbooleanfoo(char c){System.out.print(c);returntrue;}publicstaticvoidmain(String[] argv ){int i =0;for(foo('A');foo('B')&&(i <2);foo('C')){
i++;foo('D');}}}AABDCBDCBBABCDABCDCCompilationfails.
DAn exception is thrown at runtime.
正确答案:A
参考答案:for(条件1;条件2;条件3){//语句 } 执行顺序是条件1->条件2->语句->条件3->条件2->语句->条件3->条件2........ 如果条件2为true,则一直执行。如果条件2位false,则for循环结束
知识点:Java
11.
以下哪个事件会导致线程销毁?()
A
调用方法sleep()B
调用方法wait()Cstart()方法的执行结束
Drun()方法的执行结束
正确答案:D
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java、Java工程师、2020
12.
下列程序的运行结果
123456789101112publicstaticvoidmain(String args[]){Thread t =newThread(){publicvoidrun(){pong();}};
t.run();System.out.print("ping");}staticvoidpong(){System.out.print("pong");}A
pingpong
B
pongping
C
pingpong和pongping都有可能
D
都不输出
正确答案:B
参考答案:B. 这里需要注意Thread的start和run方法 用start方法才能真正启动线程,此时线程会处于就绪状态,一旦得到时间片,则会调用线程的run方法进入运行状态。 而run方法只是普通方法,如果直接调用run方法,程序只会按照顺序执行主线程这一个线程。
知识点:Java
16.
正则表达式中,表示匹配非数字字符的字符是()
A
\b
B
\d
C
\BD
\D
正确答案:D
你的答案:A
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java、C语言
17.
下面哪个选项正确创建socket连接?
ASocket s =newSocket(8080);BSocket s =newSocket(“192.168.1.1”,8080)CSocketServer s =newSocket(8080);DSocket s =newSocketServer(“192.168.1.1”,8080)
正确答案:B
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
24.
在Java中,对于不再使用的内存资源,如调用完成的方法,“垃圾回收器”会自动将其释放。( )
A
正确
B
错误
正确答案:B
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java
25.
运行代码,输出的结果是()
12345678910111213141516publicclassP{publicstaticint abc =123;static{System.out.println("P is init");}}publicclassSextendsP{static{System.out.println("S is init");}}publicclassTest{publicstaticvoidmain(String[] args){System.out.println(S.abc);}}AP is init<br />123BS is init<br />P is init<br />123CP is init<br />S is init<br />123DS is init<br />123
正确答案:A
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:Java、Java工程师、安卓工程师、测试工程师、2019、测试开发工程师
26.
一般有两种用于创建线程的方法,一是(),二是()。
A
从Java.lang.Thread类派生一个新的线程类,重写它的runnable()方法
B
从Java.lang.Thread类派生一个新的线程类,重写它的run()方法
C
实现Thread接口,重写Thread接口中的run()方法
D
实现Runnable接口,重写Runnable接口中的run()方法
正确答案:BD
参考答案:BD 创建线程对象两种方式: 1.继承Thread类,重载run方法; 2.实现Runnable接口,实现run方法
知识点:Java
28.
执行如下程序代码
1234char chr =127;int sum =200;
chr +=1;
sum += chr;
后,sum的值是()
备注:同时考虑c/c++和Java的情况的话
A72B99C328D327
正确答案:AC
官方解析:暂无官方题目解析,去讨论区看看吧!
知识点:2015、C++、Java、Java工程师、C++工程师、C语言
29.
有关会话跟踪技术描述正确的是()
ACookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端
B
关闭浏览器意味着临时会话ID丢失,但所有与原会话关联的会话数据仍保留在服务器上,直至会话过期
C
在禁用Cookie时可以使用URL重写技术跟踪会话
D
隐藏表单域将字段添加到HTML表单并在客户端浏览器中显示
正确答案:ABC
参考答案:ABCD:隐藏域在页面中对于用户(浏览器)是不可见的,在表单中插入隐藏域的目的在于收集或发送信息,以利于被处理表单的程序所使用。浏览者单击发送按钮发送表单的时候,隐藏域的信息也被一起发送到服务器。
知识点:Java
1、安装gin
go get -u github.com/gin-gonic/gin
2、安装session
go get github.com/gin-contrib/sessions
3、安装JWT鉴权
go get "github.com/golang-jwt/jwt/v4"
4、创建一个jwt的工具文件
package utilsimport ("errors""github.com/golan…
CoreShop源程序是以数据库优先进行定义的,所以其本身不包含代码优先的定义,但本从更习惯于代码优先,所以为其定义了代码优先的定义。
1 CoreCms.Net.Model.Entities.SysRole
using SqlSugar;
using System.ComponentModel.DataAnnotations…