チェーンを使用してハッシュ テーブルのデータ構造を記述しようとしています。ネストされたクラスからキーワード「static」を削除すると、「SeparateChaining.Node のジェネリック配列を作成できません」というエラーが表示されますか? new を使用して hmap にメモリを割り当てる行で。
static キーワードを使用すると問題なく動作します。ここでキーワード static の重要性とそれがもたらす違いを指摘してください。オブジェクトの配列を作成していますが、エラー (Eclipse) に汎用配列が表示されるのはなぜですか?
public class SeparateChaining<Key,Value> {
private int m;
private Node[] hmap;
private int n;
public SeparateChaining()
{
m=5;
n=0;
//error here on removal of static keyword from the node class declaration
hmap=new Node[m];
}
private ____ class Node //works fine with static. Otherwise shows error
{
private Object key;
private Object value;
private Node next;
public Node(Object k, Object v)
{
key=k;
value=v;
}
}
ありがとう