`
zhanghw0917
  • 浏览: 185666 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

JAVA中final修饰对象引用

    博客分类:
  • Java
阅读更多

原来我错了;

 

 final 修饰的量以视为常量,

 当修饰对象引用时,我错误的认为变量指向的对象是不可变的,然而对象是可变的,不可变只是“变量对对象的引用”

 

TestFinal

package src.test;

import java.util.HashMap;
import java.util.Map;

public class TestFinal {

	private String name  ;
	
	private Map map = new HashMap ();
	
	public TestFinal(){
		name = "li" ;
	}

	public void put(Object key , Object value){
		map.put(key, value);
	}
	
	public Object get(Object key ){
		return map.get(key);
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	
}

 

CodeTest1

public class CodeTest1 {
	final TestFinal tf = new TestFinal ();
	
	public static void main(String[] args) {	
		CodeTest1 ct1 = new CodeTest1 ();
		ct1.tf.setName("wew");
		System.out.println(ct1.tf.getName());
	}	
}

 

 

分享到:
评论

相关推荐

    final修饰类

    在Java编程语言中,`final`关键字有着重要的作用,它能用于修饰类、方法和变量,以限制它们的使用方式。下面将详细解释`final`修饰类、方法和变量的具体含义及其应用场景。 **final 修饰类** `final`修饰类的作用...

    java中final和static的区别

    final 关键字在 Java 中有多种用法,包括修饰变量、方法、类等。下面是 final 关键字的各种用法: 1. final 修饰变量:表示该变量一旦被初始化,程序无法修改变量的值,该变量变成了一个常量。注意,系统不会默认为...

    java中final修饰符实例分析

    Java中的`final`修饰符是一个非常重要的关键字,它用于创建不可修改的变量、方法和类。在Java中,`final`具有以下含义: 1. **final变量**: - **成员变量**:如果一个类的成员变量(字段)被`final`修饰,那么它...

    Java中的final关键字

    - 对于对象引用,`final`关键字并不保证对象内的状态不可变,仅保证引用本身不变。因此,对于复杂对象,如果需要确保对象状态不可变,还需要配合不可变对象的设计原则。 总的来说,`final`关键字是Java中的一种强...

    java中final和static的总结

    在Java编程语言中,`final` 和 `static` 是两个非常重要的关键字,它们分别具有不同的含义和用法,但都对代码的结构和行为产生深远影响。本文将深入探讨这两个关键字,并结合实际示例来解释它们的应用场景。 首先,...

    java中final修饰符的使用方法

    在Java编程语言中,`final`关键字是一种非常重要的修饰符,它可以用来限制变量、方法和类的可变性。理解并正确使用`final`对于编写安全、稳定的代码至关重要。下面我们将详细探讨`final`修饰符的用法及其背后的原理...

    java中final与static的用法

    `final`关键字在Java中有多种用途,它可以用来修饰类、方法和变量,其主要目的是确保被修饰的对象具有不可变性或只读性。 #### 1. `final`修饰变量 当`final`用于修饰一个变量时,该变量成为常量,一旦赋值后就不...

    Java基于final修饰数据过程解析

    Java 中的 final 关键字可以修饰数据、方法和类,今天我们主要讨论 final 修饰数据的过程解析。final 修饰的数据代表着:永远不变。意思是,一旦你用 final 修饰一块数据,你之后就只能看看它,你想修改它,没门。 ...

    java中final关键字和static关键字详细用法

    Java中的`final`和`static`关键字是编程中非常重要的两个修饰符,它们分别用于不同的场景,以确保代码的稳定性和高效性。 首先,`final`关键字主要用于表示不可变性。它可以用来修饰类、方法和变量。对于类,如果一...

    第6章 Java语言中的修饰符.ppt

    要访问实例变量和方法,需要先创建对象实例,然后通过对象引用进行访问。 总的来说,Java语言中的修饰符是实现面向对象编程的关键工具,它们帮助我们控制代码的可见性、实现抽象、确保不变性和优化代码结构。正确...

    Java关键字final、static使用总结

    在 Java 编程语言中,final 和 static 是两个非常重要的关键字,它们可以用来修饰类、方法、变量等,了解它们的使用方法和限制非常重要。本文将详细总结 final 和 static 的使用方法和限制。 一、final 关键字 ...

    Java final 修饰符知识点总结(必看篇)

    Java中的`final`修饰符是一个非常关键的概念,它在编程中起到了不可变性的作用,确保了数据的安全性和代码的稳定性。下面将详细讲解`final`修饰符在不同场景下的应用和注意事项。 1. **final修饰类** 当`final`...

    Java中final的用法.doc

    总结来说,`final`关键字在Java中扮演了多种角色,包括创建不可变变量、常量、对象和数组,确保方法和类的不可覆盖性,以及在多线程环境中的安全性。正确使用`final`能够提高代码的清晰度、稳定性和性能。

    java面向对象基础_final详细介绍.docx

    在Java编程语言中,面向对象编程(Object-Oriented Programming, OOP)是其核心特性之一。这个文档详细介绍了Java中的`final`关键字在面向对象基础中的应用。`final`关键字在Java中扮演着重要的角色,它用于创建不可...

    继承和接口和java访问权限修饰符总结.doc

    动态绑定可以实现多态性,通过将子类对象引用赋值给超类对象引用变量来实现动态方法调用。 四、访问权限修饰符 访问权限修饰符是指在 Java 中用来控制类、方法和变量的访问权限的关键字。常见的访问权限修饰符有:...

    final修饰符与类型转化

    在Java编程中,`final`修饰符和类型转化是两个重要的概念,它们分别涉及类的继承限制和对象的类型转换。 1. `final`修饰符: - `final`类:当一个类被声明为`final`时,它无法被其他类继承。这通常用于防止他人...

    JAVA类与对象及数组习题

    JAVA类与对象及数组习题 JAVA类和对象及数组是JAVA编程...在JAVA中,变量的类型可以是基本类型或引用类型,例如`int`、`String`等。 14. 编程实践: 通过实际编程实践,可以加深对JAVA类和对象及数组的理解和应用。

    Java入门——Java修饰词总结

    Java作为一门广泛使用的编程语言,拥有丰富的语法结构和关键字,其中修饰词(modifiers)是Java语言中的重要组成部分,用于限定类、方法、字段等的访问级别、生命周期以及特性。以下是对Java中11个修饰词的详细介绍...

    java final变量详解

    Java 中的 final 变量是指不能被改变的变量,它有三个方面的作用:修饰变量、修饰方法和修饰类。在 Java 中,final 变量是一种常量,它只能被赋值一次,赋值后值不再改变。 final 变量的使用方法有多种,例如在变量...

Global site tag (gtag.js) - Google Analytics