面试题目随记

近期都不写代码了。学习的重心放在了面试上面去了。这是我第二次去面试,第一次全然是抱着一试的心态去的,这是是有点准备的。毕竟去了图书馆借了本《java程序猿面试宝典》翻阅一遍。尽管仅仅看了第一部分怎样写简历。和java的几个基础知识点,可是还是有作用的,在这里我又要推荐那些大三或者想去实习,同一时候没有工作经验的同鞋一定要阅读本书了。这本书确实值得一读的,并且涉及的技术问题不是那么的深奥,全然能够当作对java的复习嘛!
如今就来理一理今天的面试题目。首先说先这家公司:这是一家总部在成都的公司。在贵阳市有个开发部门而已,租的是居民楼,这个开发团队总共就五六人的样子。人好少,假设面试上了。我也未必就在里面工作!

总感觉没有青春,没有同龄人,反正与学校的反差好大。一时心里放不开!环境之类的与学校落差太大!


其次就是这家公司要的人是一上手就能够做项目的。并没有培养的计划。看来深深的体会了那句话:大公司才有人才培训。大公司看中的是基础,而小公司是看中做项目能力!
面试官说了:他们的项目非常敢,刚从政府接到一个站点项目。五天左右開始,7月底要赶着交项目。

不到一个月就交一个项目,看来我们这种未上手的确实不适合啊!


以下我就尽量回顾一下一些好玩儿的题目来着的。

并非这些题目是难题,而是无个人觉得比較好玩儿而已!

智力题目:

   1.看这串数的规律。在横线处填入适当的额数字:3968, 63, 8,3,__

   分析:这个数列的前一个数的大小是后一个数的平方-1,比如:3968=63^2-1,那么填入空格的应该是:2

   2.是一个填图题目。这题我当时没有花费时间来思考。也记不住他的题目。所以省略掉。最后一道是逻辑题目。

选择题目

  1. 在java中,0.3424的数据类型:这道题答案应该是double型,由于在java中,浮点数默认的是dobule型。float型的应该这样表示:0.3424f.
  2. 下列程序的输出结果是多少?
/*由于该题记得不太清楚了,只是《java程序猿面试宝典》里面有相似题目*/
public class Inc{
  public static void main(String[] args) {
    Inc inc = new Inc();
    inc.fermin(i);
    i = i++;
    System.out.println(i);
  }

  void fermin(int i) {
      i++;
  }
}

细致分析。答案是:0

  1. 这是一道英文题目:大概说的是:在java中,main方法返回的数据类型是什么?答案:void

  2. 考点是分支结构的case问题,大概意思是这种:

    public class Main {
     public static void main(String[] args) {
    int result = 0;
    int i = 2;
    switch(i) {
    case 1:
        result = i * 2;
    case 2:
        result = i * 2;
    case 3:
        result = result + i * result;
    case 4:
        result = result + i * result;
    }
    System.out.println(result);
    }
    }

    问此题的输出结果是多少?这次的陷阱是在switch中没有break,那么每一个case都不会跳出,一个开关通过,就会走究竟。

    其它问题

    对异常的处理问题,比方catch,finnally问题。

    编程

    这些题目都是在纸上写题目。不是上机编程。

  3. 计算1+3+5+…+99的共和

public class Main {
  public static void main(String[] args) {
    int i = 0;
    int sum = 0;
    for(i = 1; i < 100; i += 2) {
      sum += i;
    }
    System.out.println(sum);
  }
}
  1. 有一个无序的整形数组,请对它进行排序。
/************冒泡算法*****************/
public static void popSort(int[] a) {
  for(int i = 0; i < a.length; i++) {
    for(int j = a.length; j > i; j--) {
      if(a[j] < a[i]) {
        int temp = a[i];
        a[i] = a[j];
        a[j] = temp;
      }
    }
  }
}
  1. 请解释下同步和异步的问题,什么时候用到同步,什么时候考虑异步?

    线程同步:假设一个共享资源被多个线程同一时候訪问,可能会遭到破坏。那么解决的办法就是线程的同步,假设一个类的对象在多线程程序中没有导致竞争状态,则称为这种类是线程安全的。

    为了避免竞争状态,应该防止多个线程同一时候进入程序的某一个特定部分,程序的这部分称为临界区。能够使用关键字synchromized来同步方法。

  2. java中有多少种实现多线程的方法?
    我达出了两种,可是我看到同学的答案。他说有三种。
  第一种方式是:继承Thread类,还有一种是实现Runnable接口。而我们常常使用的是显示Runnable接口,由于在java中,採用的是单继承的方式。可是能够实现多个接口。一般假设这个类还须要继承其它类或者接口之类的。我们已经继承了Thread就不能继承其它父类了。

所以,採用实现接口比較好。

  1. 有一张表,请从中找出姓张的分数大于75的同鞋
  2. 写一个网页,能够输入数字和password,假设帐号和password为空。提示用户。

  3. 一道软件project的问题。题目已经不太记得清楚。
  4. 你觉得怎么样的团队才干算是一个好的团队?
    (先写到这,等明天cet4回来之后再做补充)
posted @ 2017-07-16 10:55  yangykaifa  阅读(337)  评论(0编辑  收藏  举报