问题列表 - 第27761页

状态模式:为什么上下文类不实现或继承State抽象接口/类?

我正在读关于状态模式.我刚刚开始,所以当然我首先阅读整篇维基百科的文章.

我注意到本文中的两个示例都有一些基本抽象类或Java接口,用于通用State的方法/函数.然后有一些状态从基础继承并以不同的方式实现这些方法/功能.然后是一个Context类,它有一个State类型的私有成员,并且在任何时候都可以等于其中一个实现的实例.该上下文类也实现了相同的方法,并将它们传递给当前的状态实例,然后有一个额外的方法来改变状态(或者根据设计,我理解状态的改变可能是对其中一个实现的方法的反应) .

为什么这个上下文类没有专门"扩展"或"实现"通用的State基类/接口?

state design-patterns

3
推荐指数
1
解决办法
1573
查看次数

ASP.NET MVC中的模型绑定嵌套集合

我正在使用Steve Sanderson的BeginCollectionItem助手和ASP.NET MVC 2来模拟绑定项目的集合.

只要集合项的模型不包含其他集合,这样就可以了.

我有这样的模型:

-Product
--Variants
--- IncludedAttributes

每当我渲染和模型绑定Variants集合时,它都可以正常工作.但是使用IncludedAttributes集合,我无法使用BeginCollectionItem帮助器,因为id和names值将不会遵循为其父Variant生成的id和names值:

<div class="variant">
    <input type="hidden" value="bbd4fdd4-fa22-49f9-8a5e-3ff7e2942126" autocomplete="off" name="Variants.index">
    <input type="hidden" value="0" name="Variants[bbd4fdd4-fa22-49f9-8a5e-3ff7e2942126].SlotAmount" id="Variants_bbd4fdd4-fa22-49f9-8a5e-3ff7e2942126__SlotAmount">
    <table class="included-attributes">
        <input type="hidden" value="0" name="Variants.IncludedAttributes[c5989db5-b1e1-485b-b09d-a9e50dd1d2cb].Id" id="Variants_IncludedAttributes_c5989db5-b1e1-485b-b09d-a9e50dd1d2cb__Id" class="attribute-id">
        <tr>
            <td>
                <input type="hidden" value="0" name="Variants.IncludedAttributes[c5989db5-b1e1-485b-b09d-a9e50dd1d2cb].Id" id="Variants_IncludedAttributes_c5989db5-b1e1-485b-b09d-a9e50dd1d2cb__Id" class="attribute-id">
            </td>
        </tr>
    </table>
</div>
Run Code Online (Sandbox Code Playgroud)

如果你查看表格中第一个隐藏字段的名称,它就是Variants.IncludedAttributes - 它应该是Variants [bbd4fdd4-fa22-49f9-8a5e-3ff7e2942126] .IncludedAttributes [...] ...

这是因为当我第二次调用BeginCollectionItem时(在IncludedAttributes集合上),没有给出关于它的父Variant的项索引值的信息.

我渲染Variant的代码如下所示:

<div class="product-variant round-content-box grid_6" data-id="<%: Model.AttributeType.Id %>">
    <h2><%: Model.AttributeType.AttributeTypeName %></h2>
    <div class="box-content">
    <% using (Html.BeginCollectionItem("Variants")) { %>

        <div class="slot-amount">
            <label class="inline" for="slotAmountSelectList"><%: Text.amountOfThisVariant %>:</label>
            <select id="slotAmountSelectList"><option …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc

7
推荐指数
1
解决办法
7050
查看次数

在CKEditor中创建代码块<code>或<pre>

是否有允许用户创建<code/><pre/>阻止的插件?

如果我传入一些包含<code> </code>块的html,则会显示内容,但没有任何视觉指示它与其他文本不同.这不方便,但我似乎找不到一种方法,用户可以选择他们想要按字面意思显示的代码块,然后单击按钮来指示.

我仍然是CKEditor的新手,但我知道Telerik有一个相当优雅的实现.(只需单击标题为"格式代码块"的右上方工具栏按钮).

这个编辑器支持吗?他们的任何插件是否添加了此功能?

plugins ckeditor

8
推荐指数
1
解决办法
6041
查看次数

Android Designer如"Interface Builder"?

我们开始学习Android,转换我们的iPhone应用程序.

Eclipse中有一个关于布局的基本编辑器,但它不是很好.是否有一个与iPhone"界面生成器"相同的视觉设计师?

layout android designer

21
推荐指数
1
解决办法
2万
查看次数

执行类时找不到jar

我正在编写一本ANTLR(一个语言处理库)书,有很多例子应该很容易使用命令行编译.

有些信息可以解决问题:

antlr-3.2.jar包含库类.我添加antlr-3.2.jarCLASSPATH环境变量(Windows 7)和编译类时,javac一切正常.这是我执行编译我的程序:

javac Test.java ExprLexer.java ExprParser.java
Run Code Online (Sandbox Code Playgroud)

Test.java包含my main()-method,ExprLexer而且ExprParser由ANTLR生成.这三个类都使用包含在中的类antlr-3.2.jar.但到目前为止这么好.正如我刚才所说,编译工作正常.

当我试图执行Test.class那个我遇到麻烦的时候.这是我输入的内容:

java -cp ./ Test
Run Code Online (Sandbox Code Playgroud)

执行此操作时,解释器告诉我他找不到包含在其中的ANTLR类antlr-3.2.jar,尽管我在CLASSPATH变量中添加了一个条目.

Exception in thread "main" java.lang.NoClassDefFoundError: org/antlr/runtime/Cha
rStream
Caused by: java.lang.ClassNotFoundException: org.antlr.runtime.CharStream
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: Test.  Program will exit.
Run Code Online (Sandbox Code Playgroud)

我正在使用Windows 7和Java 1.6_20.有人能说出发生了什么吗?为什么解释器不会在jar中找到我在Archive中指定的CLASSPATH

我找到了某种工作方式.我将antlr-3.2.jar复制到Test.class所在的目录中,然后执行:

java …
Run Code Online (Sandbox Code Playgroud)

java command-line classpath

4
推荐指数
1
解决办法
7399
查看次数

java.security.Key.getEncoded() 是否以 DER 编码格式返回数据?

java.security.Key.getEncoded() 是否以DER编码格式返回数据?

如果没有,是否有方法可以做到?

更新:持有 RSA 私钥实现的密钥接口

java encoding rsa der

7
推荐指数
1
解决办法
1万
查看次数

在Custom ArrayAdapter中返回空行?

当我的ListView被自定义数组适配器填充时,我检查当前列表项中的某个参数,如果它是false,我想返回一个空行.目前,我通过膨胀空的xml文件来做这件事,但是当不应该显示多个项目时,这会产生丑陋的列表项目分隔符,并且显然不是最好的方式;-)!

    if (list.get(position).equals("i-dont-want-this-in-the-list-view")){
        View empty=inflater.inflate(R.layout.empty_row, parent, false);
        return(empty);
    }
Run Code Online (Sandbox Code Playgroud)

我试图返回"null",但它显然希望返回一个View.有没有我可以做的事情,而不必事先过滤ListView用于ListView(我想保持它完整,因为我也在做其他事情).

谢谢,

缺口

android listview listadapter

4
推荐指数
1
解决办法
3802
查看次数

可用于调试生产的工具Java应用程序中的问题

只是想知道什么是各种工具和技术来调试Java应用程序的生产问题.喜欢,

  • 采用线程转储有哪些方法和工具?
  • 采用堆转储的方法和工具有哪些?
  • 分析上述转储的工具有哪些?

(假设所有都在Linux/Unix环境中)

java java-ee heap-dump

13
推荐指数
1
解决办法
7068
查看次数

C#某种插件系统

我是一名移动网络开发者,并尝试通过移动广告服务从我的流量中获利,但我遇到了问题.

首先,为了获得大部分广告,您通常需要向广告公司的服务器提出服务器端请求,而且广告服务很少.如果要在一个站点中使用它们,问题就会开始.

所有人都有不同的服务器端呼叫方法,并且尝试维护和实施这些广告代码会在一段时间后变得很痛苦.

所以我决定写一个类系统,我可以简单地为每个公司创建方法并将其上传到我的网站.

到目前为止,我有使用GetAd方法的公共广告类公共AdPublisher类,它返回一个广告公共Adservice类,其服务名称为枚举

我还将我用于所有广告服务的服务器请求代码转换为类.

它工作正常,但我希望能够创建一个广告服务类上传它,以便asp.net应用程序可以像插件系统一样自动导入/识别它.

因为我是.net的新手,我不知道从哪里开始或者怎么做.

为了清楚起见,这是我的课程

namespace Mobile.Publisher
{

public class AdPublisher
{
    public AdPublisher()
    {
        IsTest = false;
    }
    public bool IsTest { get; set; }
    public HttpRequest CurrentVisitorRequestInfo { get; set; }
    public Advert GetAd(AdService service)
    {
        Advert returnAd = new Advert();
        returnAd.Success = true;

        if (this.CurrentVisitorRequestInfo == null)
        {
            throw new Exception("CurrentVisitorRequestInfo for AdPublisher not set!");
        }
        if (service == null)
        {
            throw new Exception("AdService not set!");
        }



        if (service.ServiceName == AdServices.Admob)
        {
            returnAd.ReturnedAd …
Run Code Online (Sandbox Code Playgroud)

c# plugins

1
推荐指数
1
解决办法
168
查看次数

问题覆盖虚函数

好吧,我正在编写一个游戏,其中包含一个pairent类(敌人)的向量,它将被子类(goomba,koopa,boss1)填充,我需要在调用update时调用子类.各自的更新.我设法创建了一个问题的例子.

#include <stdio.h>
class A{
    public:
        virtual void print(){printf("Hello from A");}
};

class B : public A{
    public:
        void print(){printf("Hello from B");}
};


int main(){
    A ab = B();
    ab.print();
    while(true){}
}
Run Code Online (Sandbox Code Playgroud)

输出需要:"你好B"输出得到:"你好A"

如何让它调用B的打印功能?

c++ polymorphism inheritance

3
推荐指数
1
解决办法
262
查看次数