今天顺便看到这个文章,转发一下,因是很多初级者容易犯错的地方
-------------------------
很多人都说在JAVA中用final来修饰方法参数的原因是防止方法参数在调用时被篡改,其实也就是这个原因,但理解起来可能会有歧义,我们需要注意的是,在final修饰的方法参数中,如果修饰的是基本类型,那么在这个方法的内部,基本类型的值是不能够改变的,但是如果修饰的是引用类型的变量,那么就需要注意了,引用类型变量所指的引用是不能够改变的,但是引用类型变量的值是可以改变的。
如下面的代码:
package com.jd.test;
public class Test{ public static void main(String hh[]){ int i = 1; System.out.println(i); checkInt(i); System.out.println(i); } /** * 对于基本类型,基本类型的值在方法内部是不能够改变的 * @param i */ public static void checkInt(final int i) { //编译不通过,final修饰的局部变量i的值是不能够改变的 // i=10; } } 对于引用类型的变量,请看下面的代码:
package com.jd.test; import com.jd.domain.User; /** * * final修饰参数的测试例子 * * @author * @since 2015-10-8 */ public class Test{ public static void main(String hh[]){ User user=new User(); user.setId(1); user.setUserName("校长"); user.setPassword("123456"); checkInt(user); } /** * 对于基本类型,基本类型的值在方法内部是不能够改变的 * @param i */ public static void checkInt(final User user) { //user变量的引用是不能够改变的,否则的话,编译会报错 // user=new User(); //user变量的值是能够修改的,但所指向的引用是不能够改变的 user.setUserName("小王"); } }
相关推荐
12个产品经理最容易犯错的地方,超经典的PPT
列举了一些java中容易犯错的地方,还有一些是面试的时候会被问到的问题,在此文档中所列出来的都有解决的方法
这里是作者的项目经验,把那些需要注意的事项都详细的罗列了出来
java面试题最容易犯错的8道.docxjava面试题最容易犯错的8道.docx java面试题最容易犯错的8道.docxjava面试题最容易犯错的8道.docx
C语言的最大特点是:功能强、使用方便灵活。C编译的程序对语法检查并不象其它高级语言那么严格,这就给编程人员留下“灵活的余地”,但还是由于这个灵活给程序的调试带来了许多不便,尤其对初学C语言的人来说,经常...
C 指针 C++ 最权威资料 稿件 代码 容易犯错的地方 我收集的很多年的资料
讲解了Java基础中常见的问题,平时不长碰见的问题,通过此文档可以让基础比较薄弱的Java程序员可以认识到一些Java开发中使用的没经验容易犯错的问题,提高大家的开发效率
Java开发人员:手册中的内容能够帮助Java开发人员提高开发效率、减少犯错概率,是Java开发人员的实用参考指南。 前端开发人员:前端开发人员也需要了解一些Java知识,该手册能够为他们提供Java基础知识和实践指导。 ...
java面试题最容易犯错的8道.docx,java面试题最容易犯错的8道.docx java面试题最容易犯错的8道.docx,java面试题最容易犯错的8道.docx java面试题最容易犯错的8道.docx
Java 业务开发常见错误 100 例 代码篇 03丨线程池:业务代码最常用也最容易犯错的组件
plc编程时新手容易犯错的一点.doc
Java_解惑 PDF 高清晰版 涵盖了许多初学者容易犯错的地方
Java一些习题 主要是:字符谜题,循环谜题,异常谜题,类谜题,库谜题 附有解决方案
java基础题目,都是一些容易犯错的java题目,适合java初学者
博文链接:https://lijun53562498.iteye.com/blog/89704
马上要全国二级计算机考试了,大家可以来看看!
主要给大家介绍了关于java中最易犯错的特殊字符的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
对于初学java的人来说,最好的一本书,里面的很多细节问题都是面试时考的考点,也是初学者容易犯错的地方,推荐大家下载
java解惑,揭示了上百个程序容易犯错且理解不清楚的问题
//*p代表指针变量p所指向的变量,但是此时的p指向谁呢,不确定,所以*p会导致程序中某个内存无意修改,从而使程序崩溃。 cout << 11 <<endl;//这里不能被打印 return 0; } 修改其实很简单了,赋值...