Java——参数问题与final实例域

1、final实例域

  final关键字,一般用来修饰不再更改的变量。在之后用作常量使用。但实际上被final关键字修饰的对象变量还能更改。

  final关键字修饰若是非对象的例如数值,则该变量不可再更改。但由于对象变量,其值实际上是对一个对象的引用。因此只要不更改其引用值,但对其指向的对象进行更改是不会报错的。

2、参数问题

  显式参数:就是调用方法时,需要开发者自己提供的参数,即方法名后括号内的。

  隐式参数:在Java中隐式参数一般指this指针,即调用某对象的方法时,其隐式参数就是该对象的引用指针this。例外的是,静态方法是不包含this指针的,因此无法使用对象的相关属性。因而在使用静态方法时,一般以其类名加.调用以免产生歧义。

  同时,重要的是,Java方法的传参都是按值传参,即传递的参数都是形参,只是传递的值。但这样的情况下,对象变量为参数时,依旧能够在方法内对对象进行操作的原因依旧是对象变量的值实际是对象的引用,因此形参依旧指向的是同一个对象,所以才能有上述现象。

原文地址:https://www.cnblogs.com/dloooooo/p/13754586.html