练习06.09|Java编程笔试面试题

-回复 -浏览
楼主 2018-11-07 17:51:29
举报 只看此人 收藏本贴 楼主

上期题目解答

1. Java 支持的数据类型有哪些?什么是自动拆装箱?

Java 语言支持的 8 种基本数据类型是: byte short int long float double boolean char 自动装箱是 Java 编译器在基本数据类型和对应的对象包装类型之间做的一个转化。比如: 把 int 转化成 Integer,double 转化成 Double,等等。反之就是自动拆箱。

2.doGet()方法和 doPost()方法有什么区别? 

doGet:GET 方法会把名值对追加在请求的 URL 后面。因为 URL 对字符数目有限制,进而限 制了用在客户端请求的参数值的数目。并且请求中的参数值是可见的,因此,敏感信息不能 用这种方式传递。 doPOST:POST 方法通过把请求参数值放在请求体中来克服 GET 方法的限制,因此,可以发 送的参数的数目是没有限制的。最后,通过 POST 请求传递的敏感信息对外部客户端是不可 见的。

3.如何知道是哪一个客户端的机器正在请求你的 Servlet?

ServletRequest 类可以找出客户端机器的 IP 地址或者是主机名。getRemoteAddr()方法获取客 户端主机的 IP 地址,getRemoteHost()可以获取主机名。看下这里的例子。

4.JSP 请求是如何被处理的?

浏览器首先要请求一个以.jsp 扩展名结尾的页面,发起 JSP 请求,然后,Web 服务器读取这 个请求,使用 JSP 编译器把 JSP 页面转化成一个 Servlet 类。需要注意的是,只有当第一次请 求页面或者是 JSP 文件发生改变的时候 JSP 文件才会被编译,然后服务器调用 servlet 类,处 理浏览器的请求。一旦请求执行结束,servlet 会把响应发送给客户端。这里看下如何在 JSP 中获取请求参数。



今日题目:程序分析题    难度指数:★

1. 如果程序代码为:

public class Demo{

public static void main (String[ ] args){

String a=args[1];

System.out.println(a);

}

}


进行编译后,执行以下命令将得到什么结果?


java Demo a1 a2 a3



2、现有一个类定义如下,请回答问题:


class Employee{

String name;

int age;

double wage;

static int No=0;

Employee(String a1,int a2,double a3){

name=a1; age=a2; wage=a3;

No++;

}

}


在使用该类时,已使用下面语句生成了该类的对象:

Employee e1,e2;

e1=new Employee("王劲",26,6300);

e2=new Employee("张山",30,3800);


问题:

1)e2.name,e2.age,e2.wage的值各是什么 ?

2)生成对象e1,e2后,e1.No值为多少 能否通过类名做前缀引用属性No和age?


3、阅读以下程序,写出运行结果


class   Q1{

    public static void main(String  args[ ]){

double  d=1.23;

Dec  dec=new  Dec( );

dec.decrement(d);

System.out.println(d);

}


classs   Dec{

public void  decrement(double   decMe){

decMe = decMe - 0.1;

}

}


4、分析下列程序的执行结果:


class Value{

     public int i = 15;

  }

  public class Test{

    public static void main(String argv[]){

      Test t = new Test();     t.first();

    }

    public void first(){

      int i = 5;

      Value v = new Value();

      v.i = 25;     second(v, i);

      System.out.println(v.i);

    }

    public void second(Value v, int i){

      i = 0;     v.i = 20;

      Value val = new Value();

      v = val;

      System.out.println(v.i + " " + i);

    }

  }


5、分析下列程序的执行结果:


public class Test{

     public static void main(){

        int i = 1, j = 10;

        do{

           if(i++ > --j)

           continue;

        }while(i < 5);

        System.out.println("i=" + i + " j=" + j);

     }

  }


你可能感兴趣:


手学习Java如何抱好大腿

Java 服务端入门(资料推荐)

用思维导图纪录Java学习过程

Java入门三张图够吗

Java程序员必须掌握的英语词组

一只Java小菜鸟的面试之路

Java后端面试指南

真实工作中的编程和在学校有何不同


尚学堂6月开班时间

Java零基础就业–脱产班:06月12日

上课地址:西安市高新区科技二路西安软件园天泽大厦五楼(尚学堂软件园校区)

咨询电话:029-62258374


Java零基础就业–脱产班:06月19日

上课地址:西安市高新区科技二路西安软件园天泽大厦五楼(尚学堂软件园校区)

咨询电话:029-62258374


课程内容:Java EE 基础入门到精通


招生对象

  1. 零计算机编程基础学

  2. 对行业不满意人士

  3. 跨专业编程爱好者

  4. 在校大学生实训


Java零基础班,10年以上开发经验技术讲师、架构师、行业大牛,亲自纯面授课程,手把手教你写编程。


尚学堂夏季班免费试听课已就绪,7天免费听课,组团试听更有专车接送,体验Java乐趣,确定自己对编程感兴趣,再报名。


点击下方“阅读原文”即可预约试听~~




我要推荐
转发到