这个问题在MS面试时被问到了.我想知道这段代码中的确切设计问题.已经提供了代码,需要找到设计问题.
我有类MyHashMap,它扩展了Java HashMap类.在MyHashMap课程中,我必须保留一些员工的信息.此映射中的键将是firstName + lastName + Address.
public MyHashMap extends HashMap<Object, Object> {
//some member variables
//
public void put(String firstName, String lastName, String Address, Object obj) {
String key = firstName + lastName+ Address;
put(key, obj);
}
public Object get(String firstName, String lastName, String Address) {
String key = firstName + lastName+ Address;
return get(key);
}
public void remove(Strig key) {
put(key, "");
}
//some more methods
}
Run Code Online (Sandbox Code Playgroud)
这个设计有什么问题?我应该将HashMap子类化还是应该将HashMap声明为此类的成员变量?或者我应该实现hashCode/equals方法?
以下查询之间有什么区别:
SELECT * FROM employee WHERE NOT(start_date > '01-JAN-1970');
Run Code Online (Sandbox Code Playgroud)
而这个查询:
SELECT * FROM employee WHERE start_date < '01-JAN-1970';
Run Code Online (Sandbox Code Playgroud)
有什么区别,如果有的话,如何NOT(x > y)使用不同(x < y).谁能提供一个例子?
谢谢.
我正在编写一个Swing应用程序,并且在我之前的问题中,已经决定使用Model-View-Presenter模式将用户界面与业务逻辑分开.
当我的应用程序启动时,它执行以下代码:
Model model = new BasicModel();
Presenter presenter = new Presenter(model);
View view = new SwingView(presenter);
presenter.setView(view);
presenter.init();
Run Code Online (Sandbox Code Playgroud)
这会创建用户界面.事件由View,生成,并委托给Presenter.在Presenter随后操纵Model和更新View相应.
为了处理某些事件,我需要从用户那里获得更多信息.在这些事件的情况下,我认为Swing视图适合生成一个新JDialog窗口.
一种思路让我觉得这可能是orignal中适当的代码Presenter:
public void handlePreferences() {
Preferences prefs = view.getPreferences();
model.setPreferences(prefs);
}
Run Code Online (Sandbox Code Playgroud)
也就是说,每个内容JDialog应该代表一个不同的对象,应该从中检索View并更新Model.但是,这留下了一个问题:我是否创建了一个Model表示Preferences对象的新对象和一个Presenter用于事件处理的新对象JDialog?
在我看来,如果我想改变UI以使用JSF,那么创建一个新的Presenter和Model原始内部会View迫使我做很多工作,如果我想更改UI以使用JSF.
请随时添加评论以便澄清.
对于WebApps,web.xml可用于存储应用程序设置.我该怎么读这个文件.我的servlet在GlassFish v2服务器上运行.
我知道设计模式在创建大项目时非常有用.有没有人在使用普通(OO,程序)创建项目和在性能(执行速度)方面使用设计模式方面有经验?我想创建一个大项目,我担心使用设计模式我的脚本会运行得更慢.那么与普通的OO编程相比,设计代码的代码是什么呢?
问候
如何获取 cookie 的实际域?getDomain()、getPath() 返回 null 我也设置了适当的值。
我正在使用response.addCookie(cookie)
提前致谢。
问候, 普拉尚特
我正在尝试用selenium-webdriver实现关键字"Unselect Frame",但不知道如何使它对所有帧都是通用的.
以下示例不起作用:
/**
* Sets the top frame as the current frame.
*
*/
public void unselectFrame(){
try {
WebElement element = getElement("//body");
driver.switchTo().frame(element);
} catch (Exception e) {
//exception
}
}
Run Code Online (Sandbox Code Playgroud)
将不胜感激任何帮助.
嗨,我正在创建流媒体应用程序.因为我正在使用IP多播.
告诉我如何在将其添加到组中之前验证客户端.
那与IGMP有什么关系吗?
我有EJB的企业应用程序.该应用程序的总大小为34兆.当我部署我的应用程序时一切都很好但是当我重新部署它时,总加载类的数量增加.我正在使用visualVM查看此信息.它应该是它应该是什么,或者它是一个内存泄漏.如何解决这个问题呢?谢谢
我正在使用HtmlUnitDriver打开一个链接.这是我的代码:
HtmlUnitDriver webDriver = new HtmlUnitDriver();
webDriver.get("some url here");
Run Code Online (Sandbox Code Playgroud)
但我得到以下例外.
Caused by: com.gargoylesoftware.htmlunit.ScriptException: Wrapped com.gargoylesoftware.htmlunit.ScriptException: Wrapped com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot find function aa in object [object Object]. (https://apis.google.com/_/apps-static/_/js/gapi/plusone/rt=j/ver=use0LfpKko4.en_US./sv=1/am=!CVDWKorrwvOYBs7wcQ/d=1/rs=AItRSTMxl0wiQySaT0IYW5gyOkdlVL9A6A/cb=gapi.loaded_0#3)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:595)
at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.execute(JavaScriptEngine.java:499)
at com.gargoylesoftware.htmlunit.html.HtmlPage.loadExternalJavaScriptFile(HtmlPage.java:973)
at com.gargoylesoftware.htmlunit.html.HtmlScript.executeScriptIfNeeded(HtmlScript.java:349)
at com.gargoylesoftware.htmlunit.html.HtmlScript$1.execute(HtmlScript.java:230)
at com.gargoylesoftware.htmlunit.html.HtmlScript.onAllChildrenAddedToPage(HtmlScript.java:240)
at com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:598)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:556)
at org.cyberneko.html.HTMLTagBalancer.callEndElement(HTMLTagBalancer.java:1142)
at org.cyberneko.html.HTMLTagBalancer.endElement(HTMLTagBalancer.java:1044)
at org.cyberneko.html.filters.DefaultFilter.endElement(DefaultFilter.java:206)
at org.cyberneko.html.filters.NamespaceBinder.endElement(NamespaceBinder.java:329)
at org.cyberneko.html.HTMLScanner$ContentScanner.scanEndElement(HTMLScanner.java:3018)
at org.cyberneko.html.HTMLScanner$ContentScanner.scan(HTMLScanner.java:2005)
at org.cyberneko.html.HTMLScanner.scanDocument(HTMLScanner.java:908)
at org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:499)
at org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:452)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.parse(HTMLParser.java:789)
at com.gargoylesoftware.htmlunit.html.HTMLParser.parse(HTMLParser.java:225)
at com.gargoylesoftware.htmlunit.html.HTMLParser.parseHtml(HTMLParser.java:179)
at com.gargoylesoftware.htmlunit.DefaultPageCreator.createHtmlPage(DefaultPageCreator.java:221)
at …Run Code Online (Sandbox Code Playgroud) java ×7
glassfish ×2
classloader ×1
collections ×1
deployment ×1
grails ×1
groovy ×1
htmlunit ×1
java-ee ×1
memory ×1
mvp ×1
networking ×1
php ×1
selenium ×1
sql ×1
swing ×1
udp ×1
web-services ×1