小编Jav*_*eak的帖子

C++和Java中的虚拟机制

我对C++和Java中的虚拟机制有一些困惑.以下程序的输出是不同的.我无法理解为什么?

在Java中:

class Base 
{ 
    Base()
    {
        show();
    }    
    public void show() 
    {
       System.out.println("Base::show() called");
    }
}

class Derived extends Base 
{
    Derived()
    {        
        show();        
    }
    public void show() 
    {
       System.out.println("Derived::show() called");
    }
}

public class Main 
{
    public static void main(String[] args) 
    {
        Base b = new Derived();
    }
}
Run Code Online (Sandbox Code Playgroud)

输出是:

Derived::show() called
Derived::show() called
Run Code Online (Sandbox Code Playgroud)

在C++中,输出如下:

#include<bits/stdc++.h>
using namespace std;

class Base
{
    public:
    Base()
    {
        show();
    }
    virtual void show()
    {
       cout<<"Base::show() called"<<endl;
    }
};

class Derived : …
Run Code Online (Sandbox Code Playgroud)

c++ java oop vptr

5
推荐指数
0
解决办法
61
查看次数

如何在NetBeans中引用其他项目的类?

我正在使用NetBeans 6.8.

我有一个类ClassA位于PackageAJavaApplicationProject1.

我打算使用这个类ClassB位于PackageBJavaApplicationProject2刚导入它.一种选择是复制ClassAPackageB,但我不希望复制.我怎样才能做到这一点?

java netbeans6.8

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

标签 统计

java ×2

c++ ×1

netbeans6.8 ×1

oop ×1

vptr ×1