阅读 43628 次
发表时间:2011-08-12
  算了,哥来给阿里系的上上课,教教你class loader
  拿这种刁钻问题考小弟,有意思吗?
  也不看看你们阿里软件都写出什么样的鸟软件,还这么拽
  一般默认,类加载都是由jvm的class loader来干这件事。
  但是因为存在热加载,或者类路径自定义的问题,比如 applet 类路径存在网络上,tomcat存在webapp class path的问题,还有一种情况,就是类的版本问题,这在打补丁的时候可能会出现,jvm预留了自定义class loader的机制,可通过继承ClassLoader的方式来实现。
   当然也可通过另外的方式,比如jvm agent的方式,同样也可以在boot strap阶段作hack.
   阿里人,你们太不厚道了!
 
发表时间:2011-08-12
个人觉得
1、说不知道比答非所问好。会涉及沟通问题;
2、基础要经常巩固,每天可以花个20分钟以上看看书;
3、能够在问题中找到切入点展现的自己的实际经验和能力。
树无处不在,应该是一个入门级的考验工作经验的问题。
public class Node<T>{
    private int level;
    private String id;
    private Node<T> parentNode;
    private List<Node<T>> subNodes;

    public int countAllSubNodes(){
        int result = 1;
        if(!this.isLeaf()){
            for(Node<T> node : subNodes){
                result += node.countAllSubNodes();
            }
        }
        return result;
    }
   
    /**
     * @return the level
     */
    public int getLevel() {
        level = this.parentNode == null ? 1 : this.parentNode.getLevel() + 1;
        return level;
    }
}

发表时间:2011-08-12
haojiahero 写道
sonland 写道
5.A问自己设计一个计数器,统计web访问的人数。最简单的机制是用application保存数目,而且对计数器要加锁。我居然想用缓存保存,还要把保存的人数定时保存到数据库,然后B问我并发咋办,我脑子里立刻同步,但是犹豫没说,过了一会才说。这个也大扣分

这个没问题啊。。
前端web机器都是集群 记数器不保存在数据库保存在哪里?
并发是指访问吧。前面加层memcached就可以

另外计数器最好还是单独的应用 页面如果加SQUID 数量统计也会不准

关键错误是没了解他们想要什么?是简单应用还是一个真正生产坏境的玩意,答得乱哪,面试官总是抛出一个宏观的问题,然后就不鸟你了,答吧~


我想阿里的面试官的3个问题
第1个应该是考察你对JVM低层的掌握程度吧。一般做应用的根本接触不到这块
第2个是考察对项目的设计能力吧。设计的方案一定会有应用场景的。如果向后面所说的搞SESSIONLISTENER
功能是能实现。但是不管是对性能的要求还是对程序扩展的要求。都会很糟糕。
第3个应该是考察对数据结构的掌握吧。树应该也是比较常用的数据结构吧 我想到的key设计就是1.1.1.2这种

请LZ明盘面试的是阿里的什么职位。。哈哈
发表时间:2011-08-12
其实阿里并没你想想中那么难进,以后多注意基础!另外技术是离不开业务应用场景的,你一开始就否定了业务,面试官没办法就只能开始一些基础的东西,数据结构算法,jvm 我想随便那个公司基本都会考的吧!阿里如此,网易也是!
发表时间:2011-08-12
fangjianjiang725 写道
个人觉得
1、说不知道比答非所问好。会涉及沟通问题;
2、基础要经常巩固,每天可以花个20分钟以上看看书;
3、能够在问题中找到切入点展现的自己的实际经验和能力。
树无处不在,应该是一个入门级的考验工作经验的问题。
public class Node<T>{
    private int level;
    private String id;
    private Node<T> parentNode;
    private List<Node<T>> subNodes;

    public int countAllSubNodes(){
        int result = 1;
        if(!this.isLeaf()){
            for(Node<T> node : subNodes){
                result += node.countAllSubNodes();
            }
        }
        return result;
    }
   
    /**
     * @return the level
     */
    public int getLevel() {
        level = this.parentNode == null ? 1 : this.parentNode.getLevel() + 1;
        return level;
    }
}



你这才是答非所问
题目要求“直接”得到所在层级和位置
你这还是递归查询了位置
发表时间:2011-08-12
kdlan 写道
fangjianjiang725 写道
个人觉得
1、说不知道比答非所问好。会涉及沟通问题;
2、基础要经常巩固,每天可以花个20分钟以上看看书;
3、能够在问题中找到切入点展现的自己的实际经验和能力。
树无处不在,应该是一个入门级的考验工作经验的问题。
public class Node<T>{
    private int level;
    private String id;
    private Node<T> parentNode;
    private List<Node<T>> subNodes;

    public int countAllSubNodes(){
        int result = 1;
        if(!this.isLeaf()){
            for(Node<T> node : subNodes){
                result += node.countAllSubNodes();
            }
        }
        return result;
    }
   
    /**
     * @return the level
     */
    public int getLevel() {
        level = this.parentNode == null ? 1 : this.parentNode.getLevel() + 1;
        return level;
    }
}



你这才是答非所问
题目要求“直接”得到所在层级和位置
你这还是递归查询了位置


其实应该是想表达层级存储在节点的private int level。
发表时间:2011-08-12
确实是常问的问题,呵呵。
发表时间:2011-08-12
lifangling_2010 写道
小伙子,我对你的态度不错吧。一直笑呵呵的,面试你的是我们部门经理。

那个大哥  你在上海 逗我呢吧? 没说有刁难的问题,只是应用做的多了这些问题都不关注了,一下子反应不过来,或者忘记了。。。
发表时间:2011-08-12
hyj1254 写道
引用
所以很想找像阿里这样的公司进去好好深度锤炼下,但是还是知识不够哪,被BS了

估计错就错在这里了,没有哪个公司愿意为锤炼员工买单。

。。。 问题是咱也不是不能干活的,只是想找个更高的平台看点NB的东西
发表时间:2011-08-12
陈天桥 写道
来我盛大圈圈 做游戏开发吧 给你锻炼的机会

您不是开玩笑吧?做安卓·?
Global site tag (gtag.js) - Google Analytics