目前,这些很多大的公司面试java的时候注重2个方面,一个是宽度,一个是深度。
而不管是哪个方面都需要扎实的基础。下面是经历过某些名企业后的留下印象的部分题。
小小的几道题就完全可以看出你的基础为何不扎实。待续....
1.循环语句
for 循环的条件执行顺序是怎样的?(答案需要自己尝试,坚决提倡亲身体会)
public boolean fun(String string){ System.out.println(string); return true; }
for (fun("A"); fun("B"); fun("C")) { fun("D"); }
2.异常判断
public void test(){ try { System.out.println("A"); fun(); System.out.println("B"); } catch (RuntimeException e) { System.out.println("C"); }catch (Exception e) { System.out.println("D"); }finally{ System.out.println("E"); } } public void fun(){ System.out.println("F"); throw new RuntimeException(); }
3.switch 语句(这个出现多次)
switch ("whichOne") { case "string"://jdk7.0 后 break; case "int": break; case "byte": break; case "char": break; case "short": break; default: break; }
4.包继承方法的复写
class A { protected void Method() { } } class B extends A { public void Method() {// 正确 } protected void Method() {// 正确 } void Method() {// 错误 } private void Method() {// 错误 } }
5.正则表达式
^\d+\.\d{2,}\.[^13]\.123$
6.sql查询
select id,count(1) as 次数 from TABLENAME GROUP BY ID HAVING COUNT(1)>2
7.求素数及其他算法(重在思路)
public static java.util.List<Integer> primeNunmber(int n ,int m){ java.util.List<Integer> list = new ArrayList<Integer>(); for (int i = n; i < m; i++) { //第一层循环 if(i<=3){ System.out.println(i); list.add(i); } else { int temp = (int)Math.sqrt(i); //关键地方 for (int j = 2; j <= temp; j++) { //第二层循环 if(i%j==0){ //是否可以除断,能除断就不是素数 System.out.println(i + " 不是素数"); break; } if(j==temp){ //是否是素数 System.out.println(i); list.add(i); } } } } return list; }
.......
.......
Java 基础为何不扎实?
时间: 2024-10-15 21:47:14