Skip to content

败犬日报 2025-01-11

1. java 的泛型是类型擦除实现的

会被擦除为 Object。

2. 返回值协变

子类重写父类方法时,返回值可以是父类返回值的子类。

cpp
class Base {
public:
    virtual Base* clone() const {
        return new Base(*this);
    }
};
 
class Derived : public Base {
public:
    virtual Derived* clone() const override {
        return new Derived(*this);
    }
};

3. 开源是什么模式,为什么公司会雇人写开源

通过开源项目获取用户,获取影响力,从而可以通过其他方式盈利。

例如 oracle 维护开源软件 mysql,mysql 用户数量多了就可以推广相关服务。