java中的枚举是啥意思?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中的枚举是啥意思?相关的知识,希望对你有一定的参考价值。

Java的Enumeration(枚举,注释②)便是具有这些限制的一个反复器的例子。除下面这些外,不可再用它做其他任何事情:
(1) 用一个名为elements()的方法要求集合为我们提供一个Enumeration。我们首次调用它的nextElement()时,这个Enumeration会返回序列中的第一个元素。
(2) 用nextElement()获得下一个对象。
(3) 用hasMoreElements()检查序列中是否还有更多的对象。

②:“反复器”这个词在C++和OOP的其他地方是经常出现的,所以很难确定为什么Java的开发者采用了这样一个奇怪的名字。Java 1.2的集合库修正了这个问题以及其他许多问题。

参考资料:http://www.linuxmine.com/47334.html

参考技术A 枚举就是把集合里的对象元素
一个一个提取出来!比如说
你买了一合巧克力
里面有草莓味的
有香草口味的
有苹果口味的
你想把他们拿出来
就必须用“手”一个一个把他们拿出来
并且一次只能取一个哦
这里的手就是枚举器
你取的动作就是枚举的过程

Java中的“同步”是啥意思? [复制]

【中文标题】Java中的“同步”是啥意思? [复制]【英文标题】:What does "synchronized" mean in Java? [duplicate]Java中的“同步”是什么意思? [复制] 【发布时间】:2011-12-12 12:06:50 【问题描述】:

我一直在努力学习设计模式。 This site 使用 synchronized 关键字,但我不明白它的作用。

我在网上搜索了一下,发现和多线程和内存有点关系,但是我是机械工程师,不明白是什么意思。

谁能帮我理解线程和synchronized 关键字?

【问题讨论】:

synchronized 是 java 特定的关键字。 链接中的代码不是C++。 第一点是您链接到的代码示例是 Java 而不是 C++。 【参考方案1】:

正如评论者已经指出的那样,同步是一个 Java 关键字。

这意味着两个线程不能同时执行该方法,由 JVM 负责强制执行。

在 C++ 中,您将不得不使用一些同步结构,例如临界区或互斥体。可以咨询this。

【讨论】:

【参考方案2】:

在 (Java) 示例中

public static synchronized Singleton getInstance()

意味着一次只有一个线程应该能够访问 getInstance() 方法,以避免出现竞争情况。

【讨论】:

【参考方案3】:

C++ 中没有synchronized 关键字。

不过,Java 中有一个方法,it means the following two things:

不可能对同一对象的同步方法的两次调用交错。当一个线程正在为一个对象执行同步方法时,所有其他为同一对象调用同步方法的线程都会阻塞(暂停执行),直到第一个线程处理完该对象。 当一个同步方法退出时,它会自动建立一个happens-before 关系,随后调用同一对象的同步方法。这保证了对象状态的更改对所有线程都是可见的。

Similar rules apply to arbitrary blocks.

另外,我建议从同行评议的书籍中学习,而不是一些随意的非权威网站。

【讨论】:

以上是关于java中的枚举是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

JAVA中枚举是啥意思,怎么用

Java里的包,类,接口,枚举是啥意思

Java 枚举类型中受保护的变量是啥意思? [复制]

enum在java中是啥意思

C#中的“对象被枚举”是啥意思?

java中的枚举类型指的是啥啊?