• 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());
    	}
    }


    运行结果:

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

  • 相关阅读:
    Python学习笔记(尚硅谷)——变量
    四级高频词-工作类
    转载--JS根据浏览器的useAgent来判断浏览器的类型
    MySQL上传文件容量过大com.mysql.jdbc.PacketTooBigException
    关于<input type="file" >浏览器兼容问题
    IDictionary与TryGetValue
    生成自增ID列
    利用C#将PCM格式的Wav进行对文件裁剪截取、淡入淡出、保存为音频文件相关详细代码解释
    DevExpress控件学习总结
    C# 音频操作系统项目总结
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3358228.html
Copyright © 2020-2023  润新知