牛客刷题总结5

1.下列哪种情况会导致持久区jvm堆内存溢出

        答:        使用CGLIB技术直接操作字节码运行,生成大量的动态类

        拓展:    Java堆内存分为两部分分别是permant space和heap space

                                permant space主要存放的是Java类定义信息,与垃圾回收器要收集的Java对象关系不大,持久代溢出通常是因为持久代设置过小,动态加载了大量Java类

                                heap space主要分为年轻代和年老代,年老代常见的内存溢出原因有循环上万次的字符串处理,在一段代码内申请上百M甚至上G的内存和创建成千上万的对象

2.看以下代码,文件名称forward.jsp,如果运行以下jsp的内容,地址栏的内容为

<html>  
     <head><title> 跳转  </title> </head> 
     <body>  
         <jsp:forward page="index.htm"/>     
     </body>
 </html> 

        答:        http://127.0.0.1:8080/myjsp/forward.jsp

        拓展:    redirect:请求重定向,客户端行为,本质上是两次请求,地址栏改变,前一次请求对象消失

                       举例:你去银行办事(forward.jsp),但缺少公安局的证明(index.htm),银行要求你去公安局取了证明之后再来银行办理业务,这时你得走出银行去公安局(index.htm),因此,地址栏会改变

                       forward:请求转发,服务器行为,地址栏不变

                       举例:你把钱包落在了出租车上,你去警局报案(forward.jsp),警察局打电话给这个出租车司机(index.htm),让他把钱包送过来,你不用自己去找他,在警局等就行。所以,地址栏不变

3.假定 Base b= new Derived();调用执行b.methodOne()后,输出结果是什么

public class Base
{
   public void methodOne()
   {
      System.out.print("A");
      methodTwo();
   }
 
   public void methodTwo()
   {
      System.out.print("B");
   }
}
 
public class Derived extends Base
{
   public void methodOne()
   {
      super.methodOne();
      System.out.print("C");
   }
 
   public void methodTwo()
   {
      super.methodTwo();
      System.out.print("D");
   }
}

        答:        ABDC

        拓展:    子类重写父类的非静态方法之后,如果不是通过super关键字调用,那么调用的都是重写后子类中的方法

4.下面对静态数据成员描述正确的是

        答:        静态数据成员可以在类体内初始化

        拓展:    静态数据成员不可以直接通过类名调用,加入A类想调用B类private静态成员,那么就不能直接通过类名调用

5.下列哪项技术可以在WEB开发中实现会话跟踪实现

        答:       Session、Cookie、地址重写、隐藏域

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值