小编Aar*_*ken的帖子

依赖特质案例类的方法

有没有办法依赖特征中case类中定义的方法?例如,复制:以下不起作用.不过,我不知道为什么.

trait K[T <: K[T]] {
  val x: String
  val y: String
  def m: T = copy(x = "hello")
  def copy(x: String = this.x, y: String = this.y): T
}

case class L(val x: String, val y: String) extends K[L]
Run Code Online (Sandbox Code Playgroud)

得到:

error: class L needs to be abstract, since method copy in trait K of type 
(x: String,y: String)L is not defined
           case class L(val x: String, val y: String) extends K[L]
                      ^
Run Code Online (Sandbox Code Playgroud)

scala case-class

17
推荐指数
2
解决办法
6111
查看次数

异构数组有什么意义?

我知道比Java和Ruby更动态的Java语言通常允许您将混合类型的对象放在数组中,如下所示:

["hello", 120, ["world"]]
Run Code Online (Sandbox Code Playgroud)

我不明白为什么你会使用这样的功能.如果我想在Java中存储异构数据,我通常会为它创建一个对象.

例如,说a Userhas int IDString name.虽然我在Python/Ruby/PHP中看到你可以这样做:

[["John Smith", 000], ["Smith John", 001], ...]
Run Code Online (Sandbox Code Playgroud)

这似乎有点不太安全/ OO不是创建一个类User具有属性IDname,然后让你的数组:

[<User: name="John Smith", id=000>, <User: name="Smith John", id=001>, ...]
Run Code Online (Sandbox Code Playgroud)

这些<User ...>东西代表用户对象.

是否有理由在支持它的语言中使用前者而不是后者?或者是否有更大的理由使用异构数组?

NB我不是在谈论包含所有实现相同接口或从同一父接口继承的不同对象的数组,例如:

class Square extends Shape
class Triangle extends Shape
[new Square(), new Triangle()]
Run Code Online (Sandbox Code Playgroud)

因为对于程序员来说,至少仍然是一个同质数组,因为你将对每个形状做同样的事情(例如,调用draw()方法),只有两者之间通常定义的方法.

ruby python java arrays dynamic

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

得到单词点击段落

我有一个HTML文档,其中包含大约30,000个单词.

我希望能够在用户点击任何单词时执行某些操作.为了简单/概念,我只想alert()说这个词.

例如,在段落中,如果我点击"有"它应该运行alert("have").

我正在使用jQuery.

javascript jquery

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

在java中给出一个类对象的调用静态方法

如果

class MyClass {
    public static void main(String[] str) {
        System.out.println("hello world");
    }
}

// in some other file and method
Class klass = Class.forName("MyClass");
Run Code Online (Sandbox Code Playgroud)

我该怎么打电话MyClass.main?我在编译时没有字符串"MyClass",所以我不能简单地调用MyClass.main(String[]{}).

java

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

如何在异常堆栈跟踪中禁用PHP切断长参数的一部分?

有时这样的事情会发生:

#0 /some/path(1): Class_Name->exception_trigger()
#1 /some/other/path(5):  get_to('/some/long/path/tha...')
Run Code Online (Sandbox Code Playgroud)

如何查看所有内容的完整参数?

php exception-handling exception

15
推荐指数
2
解决办法
3243
查看次数

仅在一个方向上固定位置

所以,基本上,我想要一个固定在页面底部的项目,但是当视图水平滚动时,它也应该水平滚动.

我可以用JavaScript来解决这个问题,但有没有CSS方法可以做到这一点?我不介意在这里和那里多一些额外的DIV.

css jquery positioning

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

C++中不同类型的初始化

我正在学习C++,而且对于不同类型的初始化我感到很困惑.

你可以做:

T a;
Run Code Online (Sandbox Code Playgroud)

据我所知,有时会初始化a,有时也不会,具体取决于是否T有默认构造函数.

你也可以这样做:

T a(); // or
T a(1, 2, 3... args);
Run Code Online (Sandbox Code Playgroud)

; (在某些情况下):

T a = 1; // implicitly converted to T sometimes?
Run Code Online (Sandbox Code Playgroud)

; 如果没有构造函数:

T a = {1, 2, 3, 4, 5, 6};
Run Code Online (Sandbox Code Playgroud)

; 并且:

T a = T(1, 2, 3);
Run Code Online (Sandbox Code Playgroud)

.

如果你想在堆上分配,那就是

T a = new T(1, 2, 3);
Run Code Online (Sandbox Code Playgroud)

还有别的事吗?

我想知道a)我是否已经涵盖了所有类型的初始化,以及b)何时使用每种类型?

c++

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

array*string在Ruby中意味着什么?

我正在浏览一些Rails源代码并遇到过

# File vendor/rails/activesupport/lib/active_support/vendor/builder-2.1.2/builder/css.rb, line 129
129:     def target!
130:       @target * ''
131:     end
Run Code Online (Sandbox Code Playgroud)

*''做什么?那是乘空字符串......?你为什么要这样做呢.

ruby ruby-on-rails

14
推荐指数
2
解决办法
926
查看次数

使用JavaScript手动逐步执行CSS动画

如果我有这样的CSS关键帧动画

@keyframes flash-red {
  50% {
    background: #f00;
  }
}

#goflash.anm-flash {
  animation-name: flash-red;
  animation-duration: .5s;
  background: rgba(255, 0, 0, 0);
}
Run Code Online (Sandbox Code Playgroud)

然后我总是可以像这样触发动画:

var gf = document.querySelector("#goflash");
gf.classList.remove("anm-flash");
setTimeout(function() {
  gf.classList.add("anm-flash");
}, 50);
Run Code Online (Sandbox Code Playgroud)

有没有办法覆盖动画持续时间/动画定时功能依赖于JavaScript?我希望能够说出像红色gf.animate("flash-red", "50%")背景gfgf.animate("flash-red", "75%")让背景更像的东西rgba(255, 0, 0, .5).

理想情况下,相同的技术适用于过渡.gf.transitionTo("new-class", "50%")将元素显示为中途转换.

显然这flash-red只是一个例子 - 我希望能够用任何动画做到这一点.

javascript css html5 css3 css-animations

14
推荐指数
2
解决办法
1743
查看次数

动态的跨浏览器脚本加载

我知道IE没有元素load事件<script>- 有没有办法可靠地弥补这一点?

我已经看过一些关于事物的讨论(例如requestState == "complete"),但没有什么可以证实的.


这是为了在脚本加载完成后调用代码,这样我就不必使用AJAX来加载新的源代码(从而消除了跨域AJAX的问题).

javascript internet-explorer asynchronous cross-browser

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