`

请帮忙解答java笔试题的结果为什么是如下那样?

阅读更多
第一题:
Java code

  1. publicclassJtest{
  2. intm=1;
  3. inti=3;
  4. voidJtest(){
  5. m=2;
  6. i=4;
  7. }
  8. publicstaticvoidmain(String[]args){
  9. Jtestapp=newJtest();
  10. [color=#FF0000]app.Jtest();[/color]
  11. System.out.println(app.m+","+app.i);
  12. }
  13. }




你没有调用类Jtest中的Jtest方法,自然m和i的值不会变化,想让m=2,i=4就加上红色那句

第二题:
Java code

public class Jtest{
int m=1;
int i=3;
Jtest(){
//去掉了第一题中的void,你这个Jtest()现在由普通方法变为构造函数了
m=2;
i
=4;
}
public static void main(String[] args){
Jtest app
=new Jtest(); //生成一个类的对象会自动调用该类的构造函数,此时改变m和i的值
System.out.println(app.m+","+app.i);
}
}




第三题:
Java code

public class Test {
public static void main(String[] args) {
int a=99;

oper(a);
//值传递,传递的是a的副本,改变的也是a的副本,a本身不变
System.out.print(a);
}
static void oper(int b){

b
=b+100;
}
}




第四题:
Java code

public class Test {
public static void main(String[] args) {
String a
=new String("A");
String b
=new String("B");
oper(a,b);
//此处虽然是引用传递,但是java规定String的内容不能改变
System.out.print(a+","+b);
}
static void oper(String c,String d){
c.concat(
"B");
d
=c;
}
}




第五题:
Java code

public class Test {
public static void main(String[] args) {
StringBuffer a
=new StringBuffer ("A");
StringBuffer b
=new StringBuffer ("B");
oper(a,b);
//传递引用,StringBuffer为可变字符串
System.out.print(a+","+b);
}
static void oper(StringBuffer c,StringBuffer d){
c.append(
"B");
d
=c; //引用的指向变化不影响实参的变化
}
}


关于最后一题,为了便于理解,可以再加一句:
Java code

public class Test {
public static void main(String[] args) {
StringBuffer a
=new StringBuffer ("A");
StringBuffer b
=new StringBuffer ("B");
oper(a,b);
System.out.print(a
+","+b);
}
static void oper(StringBuffer c,StringBuffer d){
c.append(
"B");
d
=c; //d指向c指向的值即a
d.append("C"); //这是在改变a的值了
}
}



输出:ABC,B

理解了吧?
分享到:
评论

相关推荐

    java笔试题笔试题

    java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 java笔试题 ...

    java面试笔试资料java笔试题大集合及答案题库java笔试题汇总资料188个合集.zip

    java面试笔试资料java笔试题大集合及答案题库java笔试题汇总资料188个合集 100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码.doc 25个经典的Spring面试问答.docx ...

    农行Java笔试题

    【标题】"农行Java笔试题"涉及到的Java知识点涵盖了编程基础、面向对象特性、集合框架、多线程、异常处理、IO流、网络编程、数据库操作等多个领域,这些都是Java程序员必须掌握的核心技能。 首先,从编程基础角度来...

    Java笔试题代码.png

    该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题 该文件为山大地纬Java开发岗笔试试题

    变态版java笔试试题

    Java 笔试试题变态版知识点总结 Java 笔试试题变态版是 Java 开发者面试的常见题目,涵盖了 Java 基础知识、垃圾收集器、字符串、Math 函数、线程、数组、多态性、Set 集合等方面。 一、垃圾收集器(GC) 垃圾...

    100家大公司java笔试题汇总

    Java笔试题汇总 Java是最流行的编程语言之一,在软件开发行业中非常常用。以下是Java笔试题汇总,涵盖了Java的多个方面,包括Java基础、Java面向对象编程、Java多线程、Java网络编程、Java数据库编程等。 Java...

    Java基础知识笔试题及答案

    Java 基础知识笔试题及答案 Java 是一种广泛使用的编程语言,它具有强大的功能和灵活性。本资源汇总了 Java 基础知识笔试题及答案,涵盖了 Java 的基本概念、数据类型、运算符、控制结构、函数、数组、集合框架、...

    2020 兴业银行Java笔试题

    【Java笔试题解析】 在2020年兴业银行的Java笔试中,涉及了多个核心的Java编程和技术概念。以下是对部分题目进行的详细解答: 1. 输入一个正整数,计算并输出距离它最近的对称数 对称数是指从左向右读和从右向左...

    Java面试笔试题大汇总(最全+详细答案)

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。..."11Java面试笔试题汇总和答案.pdf"这个资源将提供详细的题目和解答,帮助你全面复习并检查自己的知识盲点,为Java求职面试做好充分准备。

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB.zip

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB“ 100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码.doc 25个经典的Spring面试问答.docx 8张...

    100家大公司JAVA笔试题汇总

    根据给定文件的信息,我们可以总结出以下几个重要的Java知识点: ...这些知识点涵盖了Java的基础概念、面向对象编程特性、异常处理、Servlet编程以及JSP技术等方面,对于准备Java笔试的人来说是非常重要的复习材料。

    海辉JAVA笔试题

    【标题】"海辉JAVA笔试题"所涉及的知识点涵盖了Java编程语言的多个核心领域,包括但不限于基础语法、面向对象编程、数据结构与算法、集合框架、多线程、异常处理、输入输出流、网络编程以及Java SE和Java EE的相关...

    Java笔试题大集合及答案(另附各大公司笔试题)

    Java作为一门广泛使用的编程语言,其笔试题涵盖了基础语法、数据结构、算法、多线程、网络编程、设计模式等多个方面。本资料集合了大量Java笔试题,旨在帮助求职者全面复习并准备Java相关的笔试环节,同时包含了各大...

    常见的Java 笔试题

    在软件开发领域,尤其是IT行业,Java程序员的需求量大,因此Java笔试题成为了评估应聘者技能的重要手段。以下是一些常见的Java笔试题及其相关知识点: 1. **数据类型与变量**: - Java分为基本数据类型(如int, ...

    java笔试题面试题

    Java作为一门广泛使用的编程语言,其笔试题和面试题涵盖了众多知识点,对于求职者来说,了解并掌握这些知识点是至关重要的。以下将根据标题、描述和标签,详细解析一些常见的Java笔试题和面试题所涉及的Java核心概念...

    2016年4月方正Java软件工程师笔试题

    【标题】2016年4月方正Java软件工程师笔试题 这是一份针对2016年4月方正公司招聘Java软件工程师时所使用的笔试题目集。方正集团是中国知名的IT企业,其对Java工程师的技术要求通常涵盖了基础语法、面向对象编程、...

    java笔试题大汇总

    Java笔试题涵盖了许多核心概念,这里我们逐一详细讨论: 1. 面向对象的特征: - 抽象:抽象是将复杂的问题简化,关注关键特性,忽略无关细节。在Java中,抽象主要体现在抽象类和接口。 - 继承:继承允许创建新类...

    阿里软件JAVA笔试题

    阿里软件JAVA笔试题是阿里巴巴公司为招聘软件开发工程师所设计的一份笔试题目,涵盖了JAVA语言、数据结构、算法、设计模式、数据库等多方面的知识点。 本题目共有15道题目,涵盖了以下几个方面: 逻辑推理 1. 甲...

Global site tag (gtag.js) - Google Analytics