小编nab*_*bil的帖子

Java中的协方差和重载

class A {
   boolean f(A a) { return true; }
}
class B extends A {
   boolean f(A a) { return false; } // override A.f(A)
   boolean f(B b) { return true; }  // overload A.f
}

void f() {  
   A a = new A();
   A ab = new B();
   B b = new B();
   ab.f(a); ab.f(ab); ab.f(b); //(1) false, false, *false*
   b.f(a); b.f(ab); b.f(b);    //(2) false, false, true
}
Run Code Online (Sandbox Code Playgroud)

你能解释一下最后一行的错误输出,为什么不是真的?

java overloading covariance

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

有没有办法找到一个Field是否与isPrimitive()相同的布尔值?

有没有办法找到一个Field是否boolean与Java反射相同isPrimitive()

Field fieldlist[] = clazz.getDeclaredFields();
for (int i = 0; fieldlist.length & gt; i; i++) {
 Field fld = fieldlist[i];
 if (fld.getClass().isPrimitive()) {
  fld.setInt(object, 0);
  continue;
 }
}
Run Code Online (Sandbox Code Playgroud)

java reflection boolean class

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

如何在putty中定义到远程桌面的隧道连接?

我需要在我的大学网络中连接(在rdp中)到一台机器(让我们称之为#1)(我有它的内部IP),我也可以访问ssh中同一网络中的Linux服务器机器,我可以用来访问#1,我正在使用putty,有人可以向我解释我如何连接它吗?

[我的笔记本电脑] ---> [Linux服务器] ---> [windows机器]在rdp

谢谢,

ssh putty rdp remote-desktop tunnel

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

如何在没有 Eclipse 构建路径选项的情况下添加外部 jar?

我的java文件jdbc11.javajavac jdbc11.java在cmd中使用命令成功编译,之后当我尝试运行时java jdbc11出现此异常:

java.lang.ClassNotFoundException: com.mysql.jdbc:Driver
Run Code Online (Sandbox Code Playgroud)

在文件中引用此代码

Class.forName("com.mysql.jdbc.Driver");

,当我在 eclipse 中尝试它时,我将外部 jar 添加到“Java 构建路径”中:mysql-connector-java-5.1.20-bin.jar并且它成功运行。如果我没有用 eclipse 修复它,我应该在第一次尝试使用java jdbc11命令时做什么才能工作?注意:jar 与 jdbc11.java 位于同一目录中

java eclipse import jar buildpath

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

可变和不可变类

我想在java中创建可变和不可变节点,除了可变之外,两者都应该是相同的。如何实现基类和可变类和不可变类的两个派生类?

java oop mutable immutability

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

基础结构的虚拟继承

struct A {
int i;
virtual void f() { cout << i; }
A() { i = 1; }
A(int _i) : i(_i) {}
};

struct B : A {
B() : A(2) { f(); }
void f() { cout << i+10; }
};

struct C : B, virtual A {
C() : A() {}
};
Run Code Online (Sandbox Code Playgroud)

你能否解释为什么在C结构中会有两个A :: i以及为什么会有两个vptr指针指向C结构的'虚表表方法',尽管A只有虚方法?我知道当从一个公共基地有虚拟继承时,会有一个共同基础的实例而不是两个,请指教!

c++ struct structure virtual-inheritance

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

这里的协方差是否安全?

class Food{}

class Meat extends Food{}

class Animal{
    void feed(Food f){}
}

class Lion extends Animal{
    void feed(Meat m){}
}


void foo(Animal a){
   Food f = new Food();
   a.feed(f);
}
Run Code Online (Sandbox Code Playgroud)

如果我们发送到foo(new Lion())会怎么样?我知道它会出错,但我需要解释

java oop inheritance covariance

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

符号'A'无法解析

我有这个问题符号'A'无法在文件Bh中解析,我正在使用Eclipse IDE for C/C++ Developers:

//B.h file

#ifndef __B_H__
#define __B_H__

#include "A.h"



class B:  public cs::A{

};

#endif
Run Code Online (Sandbox Code Playgroud)

包括Ah文件:

//A.h file

#ifndef A_H_
#define A_H_
namespace cs{
class A {


};
}

#endif
Run Code Online (Sandbox Code Playgroud)

我在这里缺少什么?

c++ eclipse oop header eclipse-cdt

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

C++中的多态性,子类型?

有人可以向我解释最后5行,为什么当Manager是Employee的子对象时会发生这种情况?

ostream& operator << (
   ostream &, const Employee &
);
Employee  e;
Manager   m;
Employee &eRef1 = e;  // OK!     
Employee &eRef2 = m;  // OK!  
Manager  &mRef1 = e;  // Compile error!
Manager  &mRef2 = m;  // OK!
cout << e << m;       // OK! 
Run Code Online (Sandbox Code Playgroud)

c++ polymorphism reference

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

使用System.out.println在tomcat中调试JavaServlet?

我正在尝试使用Tomcat调试我的Java servlet代码System.out.println.

输出在哪里?

java tomcat servlets

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

C++中的向量容器和静态绑定?

有人可以解释为什么i->value()(i + 1)->value()打印1和3不是1和4喜欢 x[0]->value() << x[1]->value()

#include <iostream>
#include <vector>

class A
{
public:
    A(int n = 0) : m_n(n) { }

public:
    virtual int value() const { return m_n; }
    virtual ~A() { }

protected:
    int m_n;
};

class B
    : public A
{
public:
    B(int n = 0) : A(n) { }

public:
    virtual int value() const { return m_n + 1; }
};

int main()
{
    const A a(1); //a.m_n=1
    const B b(3); …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance virtual-functions vector static-binding

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

为什么用事件i声明委托,我没有看到关键字事件的使用?

请给我一个简单的例子,为什么我们需要它,如果我们没有在带有委托的例子中使用它会发生什么.谢谢

c# events delegates

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