首页 > 代码库 > JAVA基础知识_对象
JAVA基础知识_对象
对象可以作为参数传递给方法
传递对象不是将对象本身的值传递给形参,而是将对象的引用值传递给形参
void method1(Num num){
num.i+=10;
}
method1方法体内形参内容的任何改动,也是对对象本身的改动
void method2(Num num){
num=new Num();
num.i=100;
}
这里的对象内容并没有改变
因为Java中对象作为参数传递时,相当于是把对象在内存中的地址拷贝了一份传给参数
method1中,因为形参和对象有相同的内存地址,所以对形参的修改,自然对象本身内容也跟着改变。
而method2中,刚开始和方法1中一样,他们仍然是指向相同的内存地址,但是new Num(),等于开辟了一块新的内存区域
这就导致形参与对象存放地址不一样了,自然对形参的改变不会反应在对象上。
this:
表示当前对象的引用
1.返回当前对象,或把当前对象作为参数传递给其他方法时
Classname method(){
return this;}
2.如果局部变量与所属类的属性成员变量重名时(封装属性时)
this.name=name;
3.一个构造方法中调用其所属类的另一个构造方法
不过,只可调用一次,且要在方法体内任何语句之前
final:
被Final定义的对象只能指向唯一一个对象,不可以将它在指向其它对象
但是一个对象本身的值却是可以改变,只是对象引用(指向)不可变。
JAVA基础知识_对象
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。