小编3mp*_*pty的帖子

Java"unchecked调用compareTo(T)作为原始类型java.lang.Comparable的成员"

我正在尝试将排序列表实现为Java中的简单练习.为了使它具有通用性我有一个add(Comparable obj)所以我可以在任何实现Comparable接口的类中使用它.

但是,当我obj.compareTo(...)在代码中的任何地方使用时,我"unchecked call to compareTo(T) as a member of the raw type java.lang.Comparable"从编译器(带-Xlint:unchecked选项)获得.代码工作正常,但我无法弄清楚如何摆脱这个恼人的消息.

任何提示?

java generics unchecked comparable

23
推荐指数
2
解决办法
3万
查看次数

在没有显式调用的情况下,在子方法之前强制执行父方法

我正在开发一个 c++ 应用程序,但我面临一个问题:我有一个从抽象类 A 派生的类 B,它具有一些事件处理方法。第三个类 C 派生自 B,并且必须重新实现一些 B 方法。有没有办法在调用 C 的方法之前隐式调用 B 的方法?

类图:

class A
{
    virtual void OnKeyPress(event e)=0;
};
class B : public A
{
    virtual void OnKeyPress(event e)
    {
    print("Keypressed: "+e)
    };
};
class C : public B
{
    void OnKeyPress(event e)
    {
    //DoSomething
    }
}
Run Code Online (Sandbox Code Playgroud)

我想出的解决方法之一是使用 C::foo() 中的 B::foo() 从 C 调用父方法。这是可行的,但开发人员需要记住在方法的主体中添加调用。

另一种方法是定义一个新的虚拟方法,子进程将覆盖该方法,父进程将在其“OnKeyPress”方法中调用该方法。

谢谢,3mpty。

c++ oop inheritance

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

将目录中的cat文件压缩到一个文件中,在内容之前插入文件名

我有一个txt文件目录可以插入到另一个文件中.但我需要在每个文件的内容之前加上一个标题.具体来说,我想做这样的事情:

---------------- <FILENAME> ----------------
content
---------------- <FILENAME2> ---------------
content
Run Code Online (Sandbox Code Playgroud)

实际上我不需要文件名之前和之后的所有"------------",但它会很好.

感谢您的时间 ;)

bash shell cat

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

标签 统计

bash ×1

c++ ×1

cat ×1

comparable ×1

generics ×1

inheritance ×1

java ×1

oop ×1

shell ×1

unchecked ×1