小编Ben*_*laa的帖子

我怎样才能引用当前类的类型?

这有点难以解释,但我到处都看,我找不到任何好的答案.

我也看过Stack Overflow问题如何引用接口在Java中实现的类类型?如何返回相同类型的对象的实例作为类中使用Java 6过去了?,但他们无法回答我的问题.应用继承时有一个例外.

有一个例子,让它更容易理解:

假设我有一些名为SelfMaker的界面:

public interface SelfMaker <SELF>{
    public SELF getSelf();
}
Run Code Online (Sandbox Code Playgroud)

A有一只狗,可以与另一只狗生育.所以狗是一个"SelfMaker",像这样:

public class Dog implements SelfMaker<Dog> {
    String color;

    public String toString() {
        return "some " + color + " dog";
    }

    public Dog procreate(Dog anotherDog) {
        Dog son = getSelf();
        son.color = color;
        return son;
    }

    @Override
    public Dog getSelf() {
        return new Dog();
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我有一只国内狗,他是一只狗,但它有一个可爱的家庭,他给他起了个名字.像这样:

public class DomesticDog extends Dog {
    private String name;

    public String toString() {
        return …
Run Code Online (Sandbox Code Playgroud)

java oop generics

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

如何从具有Generic的类访问.class?

当涉及没有泛型的类时,我可以像这样访问这个.class属性:

class Foo{
    Class<Foo> getMyClass(){
        return Foo.class;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是如果Foo有一个泛型,我如何访问这个".class"属性?像这样:

class Foo<T>{
    Class<Foo<T>> getMyClass(){
        return (Foo<T>).class //this doesnt work...
    }
}
Run Code Online (Sandbox Code Playgroud)

我试图回来Foo.class,但这不会起作用:"cannot cast from Class<Foo> to Class<Foo<T>>".

我怎样才能Foo<T>上课?

java generics

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

在创建目录时,Int 21h/ah = 39h返回AX = 3

我正在尝试在DOSBOX中创建一个新目录.我在Debian上,通过DOSBOX使用MASM.代码非常简单,但不起作用.

我已经用debug执行了它,它返回错误3(执行后AX = 0003h).根据这个,这个错误是因为该路径不存在.我的DOSBOX将C:驱动器安装在.asm代码所在的目录中.

我不明白为什么我会收到这个错误.如果我mkdir C:\nuevoDOSBOX命令行运行,它将创建目录nuevo没有问题

.model small
.stack
.code
  mov dx, offset filepath
  mov ah, 39h
  int 21h
  mov ah, 4ch
  int 21h

  ret
  filepath db "C:\nuevo", 0
end
Run Code Online (Sandbox Code Playgroud)

assembly masm dosbox create-directory x86-16

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

放一个`<custom-tag>`而不是`<ul>`或`<ol>`来创建一个列表

在你将它标记为重复之前:我已经看到了你能否<li> s没有它们在<ul>或<ol>之下?但他们通过使用样式来解决问题.

这里是我的问题:我可以有<li>内部的项目<custom-tag>,而不是<ul><ol>元素?

所以这样的事情:

<ul>
  <li>one</li>
  <li>two</li>
  <li>d</li>
  <li>three</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

看起来像这样:

<custom-tag>
  <li>one</li>
  <li>two</li>
  <li>d</li>
  <li>three</li>
</custom-tag>
Run Code Online (Sandbox Code Playgroud)

问题的背景

我想为simditor创建一个新组件:orderer列表中罗马数字的组件,但它将其识别ol为"内置" ol按钮......似乎它使用标签名称来检测按钮是否处于活动状态在一个编辑器上,所以我想通过使用另一个名称的标签来解决这个问题,现在,这个解决方案似乎比重写整个库更容易.

html css

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

从Java中的generalgeated属性的超类调用静态成员

我必须承认,使用模板时Java有点混乱......

正如标题所解释的那样,我正在尝试使用在某些泛化属性的超类上编码的静态成员.我怎样才能做到这一点?

例如:

class A {
    public static void someAction();
}

class B<T extends A>{ (...) }
Run Code Online (Sandbox Code Playgroud)

¿如何someAction()在B类中访问A的方法?

java oop static templates

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

标签 统计

java ×3

generics ×2

oop ×2

assembly ×1

create-directory ×1

css ×1

dosbox ×1

html ×1

masm ×1

static ×1

templates ×1

x86-16 ×1