zoukankan      html  css  js  c++  java
  • java基础学习(一)

         去年10月份从学校出来实习,从事javaWeb方面的开发。到现在已经快1年了。突然间感觉自己的java基础知识忘记的很厉害,或者说知识掌握的不牢吧。回顾自己学习java,发现我竟然一本关于java基础的书籍都没有看,以前都是看的视频进行学习的。现在想好好补下基础。先从看《head first java》这本书开始吧。

         今天在公交上看来一个比较有意思的程序。如下:

    当时看了下,弄了好一会,没弄不来。。。。看了答案了后觉得很有意思。答案我就不贴不来了。以后回顾时,应该可以想起来吧~~

    java参数值的传递,java是通过值传递,也就是说通过拷贝传递。实参和形参是两个不同变量。对于原声数据类型来说,实参和形参没有任何关系,是两个不同的变量,但是对于引用数据类型,形参和实参虽然是两个不同变量,但是他们指向同一对象,对其中一个的改变会影响到另外一个。代码如下:

    public class Person {
    	private int age;
    	private String name;
    	public Person(int age,String name){
    		this.age = age;
    		this.name = name;
    	}
    	public int getAge() {
    		return age;
    	}
    	public void setAge(int age) {
    		this.age = age;
    	}
    	public String getName() {
    		return name;
    	}
    	public void setName(String name) {
    		this.name = name;
    	}
    	
    }
    public class Test01 {
    	static void changeParam(int param){
    		param = param + 3;
    	}
    	static void changeParam(Person p){
    		p.setAge(34);
    	}
    	public static void main(String[] args) {
    		int param = 3;
    		System.out.println("before:"+param);
    		changeParam(param);
    		System.out.println("after:"+param);
    		
    		Person p = new Person(13,"zhongqian");
    		System.out.println("before:"+p.getAge());
    		changeParam(p);
    		System.out.println("after:"+p.getAge());
    	}
    }


    运行结果:

    如果参数是原声数据类型,形参的改变不会影响到实参;如果参数是引用数据类型,形参的改变会影响到实参。

  • 相关阅读:
    子信息传递多个参数
    Oracle q' 简化单引号转义
    HTML的target属性中_blank、_self、_parent、_top含义
    数据库设计之“有时不得不违背的第三范式”
    Jquery下的Ajax调试方法
    JQuery.Ajax之错误调试帮助信息
    定时删除数据-用JOB
    数据分析
    机器学习数学基础
    机器学习数学基础
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3358228.html
Copyright © 2011-2022 走看看