java中特殊条件下的对象定义
我想在代码中使用lang变量,并在java中特殊条件下的对象定义,java,oop,jsp,class,jakarta-ee,Java,Oop,Jsp,Class,Jakarta Ee,我想在代码中使用lang变量,并在if命令中给出值。 在.jsp页面中是否可以使用以下代码 <% String language = "EN"; EN lang; if (language.equals("EN")){ lang = new EN(); } else if (language.equals("FR")){ lang = new FR(); } %> // html ... <% out.print(lang.variabl
if
命令中给出值。
在.jsp页面中是否可以使用以下代码
<%
String language = "EN";
EN lang;
if (language.equals("EN")){
lang = new EN();
}
else if (language.equals("FR")){
lang = new FR();
}
%>
// html ...
<% out.print(lang.variable1); %>
请输入代码?类
EN
和FR
是从公共接口还是抽象类派生的?如果是,您可以更改EN lang代码>到语言代码>。如果没有,您可以开始考虑重构类。一个丑陋的解决方案是使用对象语言代码>类EN
和FR
是从公共接口还是抽象类派生的?如果是,您可以更改EN lang代码>到语言代码>。如果没有,您可以开始考虑重构类。一个丑陋的解决方案是使用对象语言代码>
lang=新FR()
您正在将FR类型的对象分配给EN类型的lang,这显然是错误的
lang=新FR()
您正在将FR类型的对象分配给EN类型的lang,这显然是错误的。您的代码应该如下所示:
interface Lang {
}
class EN implements Lang {
}
class FR implements Lang {
}
<%
String language = "EN";
Lang lang;
if (language.equals("EN")){
lang = new EN();
}
else if (language.equals("FR")){
lang = new FR();
}
%>
接口语言{
}
类实现Lang{
}
类FR实现Lang{
}
您的代码应该如下所示:
interface Lang {
}
class EN implements Lang {
}
class FR implements Lang {
}
<%
String language = "EN";
Lang lang;
if (language.equals("EN")){
lang = new EN();
}
else if (language.equals("FR")){
lang = new FR();
}
%>
接口语言{
}
类实现Lang{
}
类FR实现Lang{
}
与其将lang
声明为EN
,不如将其声明为EN
和FR
超类的实例(可能是lang
?)与其将lang
声明为EN
,不如将其声明为EN
和FR
超类的实例(可能是Lang
?)否,它们是包中的一个类。你的意思是我必须将EN和FR定义为接口或抽象?你能帮我编写代码吗?我如何访问EN或FR类中的变量。Jaydeep代码返回接口变量值。否,它们是包中的一个类。你的意思是我必须将EN和FR定义为接口或抽象?你能吗请帮助我编写代码?我如何访问EN或FR类内的变量。Jaydeep代码返回接口变量值。EN是英语资源束类?!FR是法国?!EN是英语资源束类?!FR是法国?!我如何访问EN或FR类内的变量?你的另一个问题有我的answer如何访问EN或FR类中的变量?您的另一个问题有我的答案