java面試題2021.6.24
1.運行如下程序打印什么結(jié)果
public class Testint2{
Public static void main(String[ ] args){
String str=”test1”;
System.out.printIn(str);//(1.1)
String str1=tesfun1(str);
System.out.printIn(str);//(1.2)
System.out.printIn(str1)//(1.3)
String str2=tesfun2(str);
System.out.printIn(str);//(1.4)
System.out.printIn(str2);//(1.5)
TestStr t1=new TestStr();
t1.str=”test30”;
String str3=tesfun3(t1);
System.out.printIn(str3);//(1.6);
System.out.printIn(t1.str);//(1.7)
}
Public static String tesfun1(String para){
para= “test2”;
Return para;
}
Public static String tesfun2(String para){
Para=new String(“test2”);
return para;
}
Public static String tesfun3(TestStr para){
Para.str=new String(“test31”);
Return para.str;
}
}
Class TestStr{
Public String str;
}
2.運行如下程序打印什么結(jié)果
public class Testint1 {
static int count=0;
public static void main(String[] args) {
System.out.println(count);//(2.1)
MyThread myThread0=new MyThread();
myThread0.start();
System.out.println(count);//(2.2)
myThread0.join();
System.out.println(count);//(2.3)
MyThread myThread=new MyThread();
myThread.start();
System.out.println(count);//(2.4)
MyThread myThread2=new MyThread();
myThread2.start();
System.out.println(count);//(2.5)
myThread.join();
myThread2.join();
System.out.println(count);//(2.6)
}
}
class MyThread extends thread{
public void run(){
for (int i = 0; i <10000 ; i++) {
Testint1.count=Testint1.count+1;
}
}
}
3.運行如下程序打印什么結(jié)果
class SSClass {
static {
System.out.println("static SSClass");
}
class SuperClass extends SSClass{
static {
System.out.println("static SuperClass init");
}
public static int value=123;
public SuperClass(){
System.out.println("init SuperClass");
}
}
class SubClass extends SuperClass{
static{
System.out.println("SubClass init");
}
static int a;
public SubClass(){
System.out.println("init SubClass");
}
}
public class Testint3{
public static void main(String[] args) {
System.out.println("main");
System.out.println(SubClass.value);
System.out.println("end static");
SubClass te=new SubClass();
}
}
}
4.有個學生student,有兩個字段id,name。表有三條記錄
Id name
1 stu1
2 stu2
3 stu3
有個分數(shù)表,有兩個字段id,score。表有三條記錄
Id score
1 11
2 21
2 23
執(zhí)行這個sql=”select * from student left join on student.id=score.id”的結(jié)果是什么。
5.有個電話任務執(zhí)行系統(tǒng),前端有個頁面,每次填寫一個電話號碼和延時時間(打算幾分鐘后撥打),已知打電話的由第三方庫實現(xiàn),函數(shù)bool callphone(String phoneNumbe)參數(shù)是即將要撥打的號碼,返回為成功或失敗
請用實現(xiàn)controller函數(shù):(注意頁面會提交多次)
/**
** phoneNumbe 即將撥打號碼
**delay 延時時間(打算幾分鐘后撥打)
*/
@RequestMapping(“callphone”)
Public String callphone(String phoneNumber,Integer delay){
}
6.Spring @Autowired 與@Resource的區(qū)別
前者是按照類型裝配的。后者是按照name裝配的
7.Spring Bean 的作用域有哪些
(1)singleton:默認,每個容器中只有一個bean的實例,單例的模式由BeanFactory自身來維護。
(2)prototype:為每一個bean請求提供一個實例。
(3)request:為每一個網(wǎng)絡請求創(chuàng)建一個實例,在請求完成以后,bean會失效并被垃圾回收器回收。
(4)session:與request范圍類似,確保每個session中有一個bean的實例,在session過期后,bean會隨之失效。
(5)global-session:全局作用域,global-session和Portlet應用相關(guān)。當你的應用部署在Portlet容器中工作時,它包含很多portlet。如果你想要聲明讓所有的portlet共用全局的存儲變量的話,那么這全局變量需要存儲在global-session中。全局作用域與Servlet中的session作用域效果相同。
8.spring 數(shù)據(jù)庫事務的實現(xiàn)原理是什么?
aop
浙公網(wǎng)安備 33010602011771號