Java map的匿名类的初始化

  可以直接使用:

Map<String, Object> testMap = new HashMap<String, Object>() {

{  put("test1", "test11");

    put("test2", "test11");

}}; 进行初始化。

在网上查了下,这个是使用了匿名类的方式来进行初始化。第一层{}是匿名类的定义,第二层{}是初始化函数的定义。

但是没有想通的是 也就是说这应是一种初始化的方法。而不是根据:

ArrayList<String> test1 = new ArrayList<String>(test2);

这种形式转变来的吧。

时间: 2025-01-21 07:03:30

Java map的匿名类的初始化的相关文章

《深入理解java虚拟机》:类的初始化

深入理解java虚拟机>:类的初始化 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载.验证.准备.解析.初始化.使用和卸载七个阶段.其中验证.准备.解析3个部分统称为连接.类加载的过程包括了加载.验证.准备.解析.初始化五个阶段. 加载.验证.准备.初始化和卸载这5个阶段的顺序时确定的,类的加载过程必须按照这种顺序按部就班的开始,而解析阶段则不一定,它在某些情况下可以在初始化阶段之后开始,这是为了支持Java语言的运行时绑定(也成为动态绑定或晚期绑定).另外注意这里的

Java内存结构、类的初始化、及对象构造过程

概述 网上关于该题目的文章已经很多,我觉得把它们几个关联起来讲可能更好理解一下.与其它语言一样,它在执行我们写的程序前要先分配内存空间,以便于存放代码.数据:程序的执行过程其实依然是代码的执行及数据的读写过程:除了在执行我们写的显式的可见代码外,Jvm还会自动帮我们帮一些事,包括类的加载.初始化.GC等,这些也不特殊.以下分别来说下这些概念. Java内存结构.类的初始化.及对象构造过程

Java编程思想笔记-类的初始化顺序

1.如果有父类,先初始化父类,然后初始化子类 2.先初始化静态成员变量.静态代码块(static { }包围的代码),然后初始化非静态成员变量.非静态代码块(大括号包围的代码).静态成员变量间.非静态成员变量间按定义顺序初始化. 3.调用构造函数 class Bowl { Bowl(int marker) { System.out.println("Bowl(" + marker + ")"); } void f(int marker) { System.out.p

Java Map 集合实现类

Map 用于保存具有映射关系的数据,集合里会保存两组值,一组用于保存Map里的key,一组用于保存Map里的value,key与map可以是任何引用类型数据.Map的key不允许重复.key与value是单向的一一对应关系,即通过key值总能找到唯一确定的value. 1 Map常用方法 void clear():清除Map集合里的所有元素 boolean containsKey(Object key):查询Map是否包含指定的key,包含则返回true Set entrySet():返回Map

【转 Java 中的内部类和匿名类

 Java 中的内部类和匿名类 2008-10-16 13:47:41 标签:Java 内部类 匿名类 休闲 职场 Java 中的内部类和匿名类* 为什么需要内部类? Java 内部类有什么好处?为什么需要内部类? 首先举一个简单的例子,如果你想实现一个接口,但是这个接口中的一个方法和你构想的这个类中的一个方法的名称,参数相同,你应该怎么办?这时候,你可以建一个内部类实现这个接口.由于内部类对外部类的所有内容都是可访问的,所以这样做可以完成所有你直接实现这个接口的功能. 不过你可能要质疑,更改一

java:使用匿名类直接new接口

java中的匿名类有一个倍儿神奇的用法,见下面代码示例: package contract; public interface ISay { void sayHello(); } 上面是一个简单的接口,下面是如何使用: package jimmy; import contract.ISay; public class Program { public static void main(String[] args) { ISay say = new ISay() { public void say

内部类与匿名类(转)

Java 中的内部类和匿名类* 为什么需要内部类? Java 内部类有什么好处?为什么需要内部类? 首先举一个简单的例子,如果你想实现一个接口,但是这个接口中的一个方法和你构想的这个类中的一个方法的名称,参数相同,你应该怎么办?这时候,你可以建一个内部类实现这个接口.由于内部类对外部类的所有内容都是可访问的,所以这样做可以完成所有你直接实现这个接口的功能. 不过你可能要质疑,更改一下方法的不就行了吗? 的确,以此作为设计内部类的理由,实在没有说服力.真正的原因是这样的,java 中的内部类和接口

匿名类直接new接口

java中的匿名类有一个倍儿神奇的用法,见下面代码示例: 1 package contract; 2 3 public interface ISay { 4 void sayHello(); 5 } 上面是一个简单的接口,下面是如何使用: package jimmy; import contract.ISay; public class Program { public static void main(String[] args) { ISay say = new ISay() { publi

匿名类和匿名对象

https://blog.csdn.net/qq_39728125/article/details/77119736 匿名类和匿名对象 2017年08月12日 16:19:40 qq_39728125 阅读数:628更多 个人分类: java基础 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_39728125/article/details/77119736 匿名类和匿名对象 在Java中有匿名类和匿名对象的概念,有名字可知他们是因为没有