问题标签 [ocpjp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
32 浏览

ocpjp - NumberFormat 类的 setMaximumDigits 方法

请证明以下代码的输出。

代码:

导入 java.text.NumberFormat;导入 java.text.ParseException;

公共类 Number_format_Demo {

}

输出:

111.234 222.5678

问题:

如果我们将最大位数设置为 3,那么第二行输出如何正确?

0 投票
1 回答
13988 浏览

java - java.util.Arrays.asList 与 removeIf 一起使用时抛出 UnsupportedOperationException

我正在为接下来 2 个月的 OCPJP 8 考试做准备,目前我这个引起了我的注意,因为我不明白为什么

这显然可以编译!但是当你运行它时,你会看到这样的异常

我需要一些帮助来理解为什么 asList 方法不能与 removeIf 一起使用?我假设它将返回一个实现 removeIf 方法的 ArrayList 实例!

任何答案将不胜感激。

干杯!

0 投票
2 回答
227 浏览

java - 静态修饰符会改变java中类成员的访问级别吗?

我正在阅读有关 Java 7 认证的 OCA 和 OCP 的书,我正在尝试使用 Java 8 进行本书的练习,我注意到一些连线的东西。

我有 Class1 类如下:

如您所见, importantMethod()方法的修饰符是受保护的静态的,并且包是cert,正如书中所解释的,我希望另一个包中的另一个类,在我的例子中为Class2,如下所示,可以访问importantMethod()方法只能通过继承,但事实证明,从Class2我也可以通过Class1的实例访问importantMethod()方法。

2 类:

如果我从Class1中删除static修饰符,它会在尝试从Class2访问importantMethod()方法时给出预期的错误:

我的问题是,非访问修饰符会改变类成员的访问级别吗?

0 投票
0 回答
126 浏览

java-8 - TreeSet.tailSet 返回 SortedSet,据说可以更新,反之亦然,但在我编码时不是

我试图理解 TreeSet.tailSet 它很容易实现,但我对文档感到困惑:

public SortedSet tailSet(E fromElement) 从接口复制的描述:NavigableSet 返回此集合中元素大于或等于 fromElement 的部分的视图。返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。返回的集合支持该集合支持的所有可选集合操作。返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。

https://docs.oracle.com/javase/7/docs/api/java/util/TreeSet.html#tailSet(E)

它说

他返回的集合是由这个集合支持的,所以返回集合中的变化会反映在这个集合中,反之亦然

但我没有看到它在我的代码测试中起作用

注意:这是为我的 OCPJP 8 准备的。

这是我的代码片段

这是输出

现在如您所见,我尝试更新

并从其源 Set 对象中检查它

并且源集对象中仍然存在“3Mark Anthony”。它没有更新。反之亦然,正如您在下一行代码中看到的那样。

有人可以帮我理解什么是错的吗?我怀疑javadoc错过了它,可能是我的理解是错误的。

PS。通往 OCPJP 8 之路

0 投票
1 回答
1300 浏览

java - Java 泛型类型参数不在其范围内

准备 OCPJP 6 考试(这就是我使用 Java 1.6 编译器的原因) 我注意到一些关于 Java 泛型的不清楚的地方。考虑以下代码:

当我尝试编译代码(使用 1.6 编译器)时,出现错误:

类型参数 V 不在其范围内

尽管上面的代码不可用,但我想知道为什么编译器认为类型<? super V><? extends V>匹配绑定的类类型但<V>不是(因为 V 匹配这两个边界)。

我不打算修改该代码,我想了解它。该代码取自示例 OCPJP 6 考试问题,询问“哪一行将编译?”

0 投票
2 回答
894 浏览

java - Java 8 Comparator 中的方法链是如何工作的?

我正在为 Java 8 证书做准备,以下让我有点困惑,也许有人可以帮我解决这个问题?在示例中,对 Squirrel 类进行了建模。它有名字和重量。现在您可以创建一个 Comparator 类来使用这两个字段对这个东西进行排序。所以首先按名称排序,然后按重量排序。像这样的东西:

到目前为止一切顺利.. 但令人费解的部分。在代码示例下方,他们声明您可以使用方法链接将其编写在一行中。也许我误解了,但是当我链接比较thenComparing部分时,我得到了一个编译错误。这与比较的对象类型有关(首先是 String,然后是 int)。

为什么当我放入中间变量而不是链接时它会起作用?是否有可能完全链接?

0 投票
1 回答
92 浏览

java - OCPJP 8 什么是使用 NIO2 的符号链接

我正在尝试获得 Java 8 认证,我很久以前就已经拥有 Java 6,而 Java 7 是我的弱点,因为我没有使用它,我有点困惑。

什么是符号链接??

根据维基百科。

我的问题是。

Java如何识别符号链接,我的意思是当它打印为真时?

也许这是一个愚蠢的问题,但我真的很想知道!

0 投票
2 回答
127 浏览

java - Java 比较器接口

我对 Comparator 接口有一个误解,它的方法 compare 这里是下面的代码,我想知道为什么 compare 方法返回 -33 我相信它应该返回 33

0 投票
2 回答
69 浏览

java - Can Stream's SKIP method making an infinite stream finite?

"The limit() and skip() methods make a Stream smaller. They could make a finite stream smaller, or they could make a finite stream out of an infinite stream. The method signatures are shown here:

The following code c...."

The above is an excerpt from OCP java 8 book. When it said "could make a finite stream out of an infinite stream", did they mean it in both the methods together or alone? I can imagine how limit() would make an infinite stream smaller, but how skip() alone would accomplish that? Is there a way or the wording in the documentation needs to be clearer?

0 投票
1 回答
218 浏览

java - OCPJP 6.0 升级

我在 6 年前获得了 OCPJP 6.0 认证。我计划将其升级到最新的 Oracle 认证之一。您能否推荐我是否应该参加 OCPJP 8.0/11.0 考试的升级?

另外,如果有其他更好的认证,您能提出任何建议吗?