南京QYFF公司面试

1.自我介绍。

  不要不说简历里的东西,简历基本上不会细看。

2.两种类型的区别

  JAVA基本数据类型及之间的转换 - 小松松 - liusong0605 的博客

  基本数据类型和引用数据类型的区别主要在存储方式上:

  基本数据类型在被创建时,在栈上给其划分一块内存,将数值直接存储在栈上;

  引用数据类型在被创建时,首先要在栈上给其引用(句柄)分配一块内存,而对象的具体信息都存储在堆内存上,然后由栈上面的引用指向堆中对象的地址。

  例如:我有一个类MyDate,其中有属性day,mouth,year等,有构造方法(带参数);

          现在为其创建一个对象MyDate d1 = new MyDate(8,8,2008);

  在内存中的具体创建过程是:

   1)首先在栈内存中位其d1分配一块空间;

  2)然后在堆内存中为MyDate对象分配一块空间,并为其三个属性设初值0,0,0;

  3)根据类MyDate中对属性的定义,为该对象的三个属性进行赋值操作;

  4)调用构造方法,为三个属性赋值为8,8,2008;(注意这个时候d1与MyDate对象之间还没有建立联系)

  5)将MyDate对象在堆内存中的地址,赋值给栈中的d1;通过句柄d1可以找到堆中对象的具体信息。

3.装箱(Boxing)与拆箱(Unboxing)

  装箱:把基本类型用其相应的引用类型包装起来,使其有对象的性质。int 到 Interge

  拆箱:与装箱相反,把引用类型的对象简化成值的基本类型。

  看http://www.cnblogs.com/wangchenyang/archive/2012/02/01/2334760.html

4.多态与重载

  自己理解。

  多态:同一个方法,在属于同一个父类的各个子类中,会有不同的实现。/把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需求的不断变化。

  重载:同一个方法名,不同的参数类型。

5.链表实现栈

  top(),pop(),push()

  一个head指针指向顶,在尾设置一个NULL作为标兵。

6.排序

  冒泡,希尔,插入,堆排序,快排,归并

  快排在有序的情况下最慢。

7.二叉树的遍历

  前序,中序,后序

9.left join,inner join

  left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 

  right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录
  inner join(等值连接) 只返回两个表中联结字段相等的行

10.数据库表的设计,各种范式  

  四种范式之间存在如下关系:

  

    

posted @ 2014-11-21 02:30  gasxia  阅读(1771)  评论(0编辑  收藏  举报