我对抽象类及其真正目的有疑问.
考虑以下情况:
interface A {
void execute();
}
class AOne implements A {
public void execute() {
x = getX();
..
functionality specific to A
..
y = getY();
..
more funtionality specific to A
}
private X getX() {
..
return x;
}
private Y getY() {
..
return y;
}
}
class ATwo implements A {
public void execute() {
x = getX();
..
functionality specific to B
..
y = getY();
..
more funtionality specific to B …Run Code Online (Sandbox Code Playgroud) 我正在尝试检索 ap:dataList 中的 ah:panelGroup 的客户端 ID。
我尝试了两种方法:
1.使用 component.clientId 例如:
<h:panelGroup id="listItem">
<h:outputText value="#{component.clientId}" />
</h:panelGroup>
Run Code Online (Sandbox Code Playgroud)
2.使用 p:component() 例如:
<h:panelGroup id="listItem">
<h:outputText value="#{p:component('listItem')}" />
</h:panelGroup>
Run Code Online (Sandbox Code Playgroud)
请注意,此面板组位于数据列表中。现在,在这两种情况下生成的客户端 ID 是不同的。(1) 没有附加到客户端 ID 的值“listItem”,而 (2) 在生成的 clientId 中具有值“listItem”。
此外,使用 (1) 生成的客户端 ID 与生成的 html 组件上的不同。
任何人都可以对这个问题有所了解,为什么会这样?