在练习下面的java小程序,错误提示不能引用内部类的定义,另一种方法在非最终状态变量,开始不知何故,后来tree网上找答案,有没有事先定义;tree类成员。

进口java AWT *;

进口javax.摆动。*;

进口javax.摆动。事件*;

进口javax.摆动。树。*;

进口静态javax.摆动。树。treeselectionmodel *;

公共课tree_02扩展JFrame {



/ main方法。

public static void main(String { } args){

类实例化。

tree_02框架=新tree_02();

frame.setvisible(真的);

}

构建方法。

公共tree_02(){

(超级);对父类。

settitle(选择节点事件。); / /设置窗口的标题。

窗口(100100400300); / /设置窗体大小的绝对位置。

setdefaultcloseoperation(JFrame。exit_on_close / /套);关闭窗口。



创建根节点。

defaultmutabletreenode根;

根=新defaultmutabletreenode(D); / /设置根节点名称。

创建一个级别的节点。

defaultmutabletreenode注意;

设置水平节点名。

注意:新的defaultmutabletreenode(图片);

将向根节点添加节点。

Root.add(注意);

/ /创建两级节点的注意。

NoteA.add(New DefaultMutableTreeNode(潜山-世博园地图));

创建第二级节点2。 / /注意下

defaultmutabletreenode noteab;

第二节点2的名称。

noteab =新defaultmutabletreenode(凤凰山岛地图);

/ /添加noteab要注意。

NoteA.add(noteab);

/ /添加子节点noteab。

NoteAB.add(New DefaultMutableTreeNode(浪淘沙。jpg));

NoteAB.add(New DefaultMutableTreeNode(海。jpg));

将第二个子节点添加到根。

Root.add(New DefaultMutableTreeNode(音乐));



从根节点创建模型树。

defaulttreemodel树模型;

设置树模型。

树=新defaulttreemodel(根,真的);

创建树按树模型。

树=新的JTree(树);



创建树选择模型。

treeselectionmodel treeselectionmodel;

树的选择模式设置。

treeselectionmodel = tree.getselectionmodel();

设置重新当选的选择模式。

TreeSelectionModel.setSelectionMode(contiguous_tree_selection);

设置节点事件。

tree.addtreeselectionlistener(新treeselectionlistener(){)

public void valueChanged(treeselectionevent e){

如果(树。isselectionempty)(!){检查是否选中了一个节点。

在路径中的所有选定节点。





}

}

});





树的形式。

GetContentPane(),添加(树、BorderLayout。中心);

}

}

后来,在主面前的主要方法();私人JTree树;即,在定义树为JTree类,错误提示消失。



总结:


学习java程序的时候,如果有不可指非终端状态变量xxx用另一种方法定义的内部类,然后检查是否已经定义。