接口vs基类

什么时候应该使用接口,何时应该使用基类? 如果我不想实际定义方法的基本实现,它应该总是一个接口吗? 如果我有一个狗和猫课。 为什么要实现IPet而不是PetBase? 我可以理解为ISheds或IBarks(IMakesNoise?)的接口,因为这些可以放在一个宠物的宠物的基础上,但我不明白哪个用于通用的宠物。

我怎样才能正确处理ASP.NET MVC中的404?

我只是开始ASP.NET MVC所以忍受着我。 我search了这个网站和其他各种各样,并已经看到了这个几个实现。 编辑:我忘了提及我正在使用RC2 使用URL路由: routes.MapRoute( "Error", "{*url}", new { controller = "Errors", action = "NotFound" } // 404s ); 上面似乎照顾这样的请求(假设初始MVC项目设置的默认路由表):“/等等/等等/等等/等等” 在控制器中重写HandleUnknownAction(): // 404s – handle here (bad action requested protected override void HandleUnknownAction(string actionName) { ViewData["actionName"] = actionName; View("NotFound").ExecuteResult(this.ControllerContext); } 但是,以前的策略不处理对Bad / Unknown控制器的请求。 例如,我没有“/ IDoNotExist”,如果我请求这个,我从Web服务器获得通用的404页面,而不是我的404如果我使用路由+重写。 所以最后,我的问题是: 是否有任何方法来捕获这种types的请求使用路由或在MVC框架本身的其他东西? 或者我应该只是默认使用Web.Config customErrors作为我的404处理程序,忘记所有这一切? 我假设,如果我去customErrors我将不得不存储通用404页面之外/视图由于Web.Config限制直接访问。 无论如何,任何最佳做法或指导表示赞赏。

如何在Python中使用线程?

我想了解Python中的线程。 我已经看过文档和示例,但坦率地说,很多示例都过于复杂,我无法理解它们。 你如何清楚地显示multithreading分工的任务?

静态类和单例模式之间的区别?

静态类和单例模式之间存在什么真正的(即实际的)区别? 两者都可以在没有实例化的情况下被调用,都只提供一个“实例”,而且它们都不是线程安全的。 还有其他的区别吗?

'git pull'和'git fetch'有什么区别?

git pull和git fetch什么区别?

什么是NumberFormatException,如何解决?

Error Message: Exception in thread "main" java.lang.NumberFormatException: For input string: "Ace of Clubs" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:580) at java.lang.Integer.parseInt(Integer.java:615) at set07102.Cards.main(Cards.java:68) C:\Users\qasim\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1 BUILD FAILED (total time: 0 seconds) 我的while循环: while (response != 'q' && index < 52) { System.out.println(cards[index]); int first_value = Integer.parseInt(cards[index]); int value = 0; //Add a Scanner Scanner scanner […]

在RC.1中,某些样式不能使用绑定语法添加

样式喜欢 <div [style.background-image]="\'url(\' + image + \')\'">Background</div> <div [style.transform]="rotate(7deg)" 不再被添加

什么时候在eval邪恶的PHP?

在所有这些年来,我一直在使用PHP进行开发,我一直听说使用eval()是邪恶的。 考虑下面的代码,使用第二个(更优雅的)选项没有意义吗? 如果没有,为什么? // $type is the result of an SQL statement // eg SHOW COLUMNS FROM a_table LIKE 'a_column'; // hence you can be pretty sure about the consistency // of your string $type = "enum('a','b','c')"; // possibility one $type_1 = preg_replace('#^enum\s*\(\s*\'|\'\s*\)\s*$#', '', $type); $result = preg_split('#\'\s*,\s*\'#', $type_1); // possibility two eval('$result = '.preg_replace('#^enum#','array', […]

如何从JSF支持bean提供文件下载?

有没有提供从JSF后台bean操作方法下载文件的方法? 我尝试了很多东西。 主要的问题是,我无法确定如何获取响应的OutputStream以便将文件内容写入。 我知道如何用Servlet ,但是这不能从JSF表单调用,并需要一个新的请求。 我如何从当前的FacesContext获得响应的OutputStream ?

准备好的语句如何防止SQL注入攻击?

准备好的语句如何帮助我们防止SQL注入攻击? 维基百科说: 准备好的语句对SQL注入是有弹性的,因为稍后使用不同的协议传输的参数值不需要被正确地转义。 如果原始语句模板不是从外部input派生的,则不会发生SQL注入。 我看不出原因。 简单的英语和一些例子,简单的解释是什么?