`
黑猪王子
  • 浏览: 132515 次
  • 性别: Icon_minigender_1
  • 来自: 云南
社区版块
存档分类
最新评论

原来我是个小白,JAVA的传递还没搞清

阅读更多

XiaoneiInfoParser xiaoneiInfoParser = new XiaoneiInfoParser(doc);
  XiaoneiInfo xiaonei = new XiaoneiInfo();
  xiaoneiInfoParser.castToPojo(xiaonei);
  System.out.println(xiaonei.getName());

 

 

 

突然发现xiaonei的值改变了,我一直以为JAVA都是值传递,吓我一跳

 

通过自己的一些测试,发现JAVA还有引用传递,对于基本类型是值传递,对于对象是引用传递

 

实践出真知,老看书,东西会忘,动手才能记得住

 

测试如下

 


import junit.framework.TestCase;


class A{
 String name;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
}

class SetA{
 public void set(A a) {
  a.setName("change!!");
 }
 public void swap(A a,A b) {
  A temp=null;
  temp=a;
  a=b;
  b=temp;
 }
}


class    PassValue{
    static void exchange(int a, int b){//静态方法,交换a,b的值
        int temp;
        temp = a;
        a = b;
        b = temp;
    }
      
}
public class TestJ2SE extends TestCase {
 public void testPoint() throws Exception {
  A a = new A();
  System.out.println(a.getName());
  SetA setA = new SetA();
  setA.set(a);
  System.out.println(a.getName());
  
  A b = new A();
  A c = new A();
  b.setName("B");
  c.setName("c");
  System.out.println(b.getName()+c.getName());
  setA.swap(b, c);
  System.out.println(b.getName()+c.getName());
  
 }
 public void testJ2SE2() throws Exception {
  int i = 10;
     int j = 100;
     System.out.println("before call: " + "i=" + i + "\t" + "j = " + j);//调用前
      PassValue.exchange(i, j);                                                                    //值传递,main方法只能调用静态方法
      System.out.println("after call: " + "i=" + i + "\t" + "j = " + j);//调用后
 }
}

 

 

看客莫笑我,我实乃小白一个

分享到:
评论

相关推荐

    JAVA教程,适合小白看

    JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看JAVA教程,适合小白看...

    java小白入门.rar

    Java小白入门是一个针对初学者的综合教程,涵盖了Java编程的基础概念和重要知识点。这个压缩包文件"java小白入门.rar"显然是为了帮助新手快速理解和掌握Java编程语言。让我们深入探讨一下其中可能涵盖的内容。 首先...

    小白java入门 (理论)

    1. Java 语言技术体系包括 J2SE、J2EE、J2ME 三个部分,其中 J2SE 用于开发桌面应用程序,J2EE 用于开发企业级应用程序,J2ME 用于开发运行于智能设备的程序。 2. Java 语言的特点:安全性、健壮性、可移植性、跨...

    基于Java Swing + MySQL的图书管理系统,优秀Java毕业设计系统,小白必看!

    基于Java Swing + MySQL的图书管理系统,优秀Java毕业设计系统,小白必看! 基于Java Swing + MySQL的图书管理系统,优秀Java毕业设计系统,小白必看! 基于Java Swing + MySQL的图书管理系统,优秀Java毕业设计系统...

    Java从小白到大牛之宠物商店

    在“Java从小白到大牛之宠物商店”这个学习资源中,主要涵盖了两个核心知识点:Java基础和MySQL数据库的应用。让我们深入探讨这两个方面。 首先,Java基础是编程世界的基石,对于初学者而言,掌握Java语言的基本...

    小白学java

    其中两个重要的版本升级是Java 5和Java 8: - **Java 5**:引入了泛型(Generics),极大地提高了代码的类型安全性和可读性。 - **Java 8**:增加了Lambda表达式和枚举类等功能,进一步提升了函数式编程的支持度,并...

    适合小白的Java练手项目.zip

    这个“适合小白的Java练手项目”是为那些刚开始接触编程或者Java的新手设计的,旨在帮助他们通过实践来巩固理论知识。 1. **变量与数据类型**:Java有基本数据类型(如int、char、boolean)和引用数据类型(如类、...

    小白java基础实验一

    在Java编程语言中,"小白java基础实验一"通常是针对初学者设计的,旨在帮助他们理解和掌握Java的基础概念。在这个实验中,我们可以看到几个关键的知识点: 1. **包(package)**:在Java中,包是一种组织类的方式,有...

    java小白的历史

    Java小白的历史,这是一个关于初学者踏入Java编程世界的专题。在这个过程中,我们将深入探讨Java语言的基础,帮助新手建立起坚实的编程基础。 Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现已被...

    一个专科小白Java的学习路线

    冲冲冲!!! 加油加油!!! 一定要在一年内把整个思维导图填满。 相信一年之后的我将不再是个小白(ovo)

    Java从小白到大牛完整版.rar

    这是一本Java语言学习教程,读者群是零基础小白,通过本书的学习能够成为Java大牛。主要内容包括:Java语法基础、数据类型、运算符、控制语句、数组、字符串、面向对象基础、继承与多态、抽象类与接口、集合框架、...

    Eclipse实现学生信息管理系统,优秀Java毕业设计,小白必看!

    Eclipse实现学生信息管理系统,优秀Java毕业设计,小白必看! Eclipse实现学生信息管理系统,优秀Java毕业设计,小白必看! Eclipse实现学生信息管理系统,优秀Java毕业设计,小白必看! Eclipse实现学生信息管理...

    Java小白写的飞机大战+注释

    【标题】"Java小白写的飞机大战+注释"是一个适合初学者的项目,它展示了如何用Java编程语言创建一个简单的游戏。在这个项目中,作者作为一个Java新手,通过编写代码并添加注释,使得其他同样在学习Java的人可以理解...

    JAVA小白笔记(狂神说JAVA)

    【JAVA小白笔记(狂神说JAVA)】 在深入学习JAVA编程的过程中,理解并掌握各种基本概念至关重要。JAVA是一种广泛应用于后端开发的强大开发语言,它以其面向对象的特性、跨平台兼容性和稳定性著称,特别是在互联网...

    java公交搜索系统,优秀毕业设计,小白必看!

    java公交搜索系统,优秀毕业设计,小白必看! java公交搜索系统,优秀毕业设计,小白必看! java公交搜索系统,优秀毕业设计,小白必看! java公交搜索系统,优秀毕业设计,小白必看! java公交搜索系统,优秀毕业...

    小白入手java图书管理系统源码,价值巨大

    小白入手java图书管理系统源码,价值巨大 登录信息 超级管理员(用户名:admin 密码:123) 运行前确定你已经成功的安装32位java和配置Access数据源 登陆成功界面 运行环境 JDK(32位jdk) access是只支持32位(x86)...

    基于Java的网络视频播放系统设计和实现,优秀毕业设计源代码,小白必看!

    基于Java的网络视频播放系统设计和实现,优秀毕业设计源代码,小白必看! 基于Java的网络视频播放系统设计和实现,优秀毕业设计源代码,小白必看! 基于Java的网络视频播放系统设计和实现,优秀毕业设计源代码,小白...

    Java小白手册——环境搭建与程序调试.pdf

    Java小白手册——环境搭建与程序调试 本资源摘要信息旨在为初学者提供Java开发环境搭建和程序调试的步骤指南。以下是本资源的知识点摘要: 一、Java开发环境搭建 1.1 JDK(Java Development Kit)的安装 * JDK是...

    Java面经,小白必看

    Java面经,小白必看

    Java入门/博学谷Java零基础Java在线教程/适合小白的Java编程/系统完整的Java基础教程

    Java入门/博学谷Java零基础Java在线教程/适合小白的Java编程/系统完整的Java基础教程

Global site tag (gtag.js) - Google Analytics