阿里巴巴笔试1

1~3 逻辑题(就是那些有点考验你智商的或者考验你逻辑能力的题目)

JAVA基础题

4、抽象类与接口有什么不同?

5、关于线程的题目,记不清了。

算法题

6、写出2乘以17效率最高的算法?

7、编程题(题目太长,略)。

好像还是关于JAVA的知识点

8、简述final、fianlly和finalize的区别?

final用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。

finally是异常处理语句结构的一部分,表示总是执行。

finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源的回收,例如关闭文件等。

 

9、简述ArrayLists和LinkedList的区别?

ArrayList使用数组方式存储数据 索引快,插入删除慢

LinkedList使用双向链表实现存储,插入删除快,索引慢

 

10、在try的括号里面有return一个值,那是否还执行finally里的代码。是在return前执行还是return后执行。

是,在return后执行

11、题目太长,略。

 

设计模式题

简述templates和××××(忘了)的区别?

数据库题

12、创建学生表S,课程表C,学生选课表SC。写出建表的SQL语句。

13、写出返回选了全部课程的学生的SQL语句。

14、写出返回至少选了5门课的学生的SQL语句。

javascript题

15、实现点击页面上的一个链接,然后隐藏这个链接的javascript代码。

<a href=”#” οnclick=”javascript:window.open(’a.htm’)”>打开窗口</a>

当鼠标打向打开窗口时,出现的链接信息是#,而不是a.htm,从而达到隐藏真实的超级链接地址的效果!

 

测试知识题

16、简述什么是测试驱动开发(TDD)。

测试驱动开发是敏捷开发中的一项核心实践和技术,也是一种设计方法论。TDD得原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。TDD虽是敏捷方法的核心实践,但不只适用于XP(Extreme Programming),同样可以适用于其他开发方法和过程。

TDD得基本思路就是通过测试来推动整个开发得进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,质量控制量化的过程。

TDD的重要目的不仅仅是测试软件,测试工作保证代码质量仅仅是其中一部分,而且是在开发过程中帮助客户和程序员去除模棱两可的需求。TDD首先考虑使用需求(对象、功能、过程、接口等),主要是编写测试用例框架对功能的过程和接口进行设计,而测试框架可以持续进行验证。

优点:在任意一个开发节点都可以拿出一个可以使用,含少量bug并具一定功能的产品。

缺点:增加代码量。测试代码是系统代码的两倍或更多。

TDD = TFD + Refactoring

(TFD -- Test First Development)

 

补充题

17、说说你希望从阿里巴巴得到什么。用3个名词概括。

阿里巴巴的价值观:

客户第一:关注客户的关注点,为客户提供建议和资讯,帮助客户成长。

团队合作:共享共担,以小我完成大我。

拥抱变化:突破自我,迎接变化。

诚信:       诚实正直,信守承诺。

激情:    永不言弃,乐观向上。

敬业:    以专业的态度和平常的心态做非凡的事情。

 

 阿里巴巴笔试1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值