【Java面向对象】java学习之旅9-类中的相关概念

成员变量和局部变量
  • 成员变量(全局变量)
  • 局部变量
  • 注意:
  • 1.如果成员变量不是静态的,静态的方法访问不到。
  • 2.代码块修饰环节的声明变量,作用域在于整个代码块。
形参和实参
  • 形参:形式上的参数
  • 实参:实际上的参数

通过一个例子来说明形参和实参的形式:

public static void main(String[] args) {
		
		Demo02 demo02 = new Demo02();
		
		//a -> 实参
		int a = 2;
		demo02.function1(a);
		System.out.println(a);
		
		int[] array = {1, 2, 3};
		demo02.function2(array);
		System.out.println(Arrays.toString(array));
		
		//注意
		String name = "lucy";
		demo02.funciton4(name);
		System.out.println(name);
		
	}
	
	
	//a -> 形参
	public void function1(int a) {
		a++;
		System.out.println(a);
	}
	
	public void function2(int[] array) {
		array[0]++;
		System.out.println(Arrays.toString(array));
	}
	
	public void funciton4(String name) {
		//由于字符串常量本身不可改变,会创建和一个新的对象 "lucy tom"
		//所以拼接之后,形参name和实参name指向的已经不是同一个对象
		name += " tom";
		System.out.println(name);
	}

这里说明了:

  • 把变量a作为参数传递到function1的内部。
  • 1.把实参a的值赋值给形参a
  • 2.function1内部使用的一直是形参a
  • 把数组array作为参数传递到function2的内部。
  • 1.把实参array的地址赋值给了形参array。
  • 2.由于地址相同,实参和形参指向的是同一个数组对象。
  • 3.方法内部操作的数组就是外部声明的数组。

这里引出了值传递和引用传递

  1. 值传递:调用方法时,传递到方法内部的是值的备份,方法内部对于该值做的修改,不会影响原来的值。
  2. 引用传递:调用方法时,传递到方法内部的是对象的引用,由于方法内部使用的引用和原对象的引用一致,方法内部对于数据做的修改,会影响到原来的数据。

对java来说:

  1. 如果参数是基本数据类型,传递到方法内部的是形参,形参的值其实就是实参的备份。所以使用的是值传递。
  2. 如果参数是引用数据类型,传递到方法内部的是形参,形参的值是实参对象的地址的备份。所以使用的也是值传递。
  3. java只有值传递。

拓展知识 javadoc文档的导出:

eclipse上右键项目->Export->搜索javadoc->勾选项目点击两次next->在 optinos框中输入-encoding utf-8 -charset utf-8->点击finish。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JeffHan^_^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值