首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

匿名种、内部类、匿名内部类

2012-09-06 
匿名类、内部类、匿名内部类???从上可以看出内部类的优点是“可以方便的访问外部类中的私有成员”;????匿名类

匿名类、内部类、匿名内部类

?

?

?从上可以看出内部类的优点是“可以方便的访问外部类中的私有成员”;

?

?

?

继续划分:

?两者的区别在于本地内部类有构造方法,而匿名内部类只能实例初始化;

package com.iflytek.innerclass;/** * @author xudongwang 2012-1-11 * * Email:xdwangiflytek@gmail.com */public class LinkDemo {public static void main(String args[]) {Link link = new Link();link.add("A");link.add("B");link.add("C");link.add("D");link.add("E");link.print();}};class Link {class Node {private String name;private Node next; // 单向链表,每个节点指向下一个节点public Node(String name) {this.name = name; // 通过构造方法为name属性赋值}public void addNode(Node newNode) { // 增加节点if (this.next == null) {this.next = newNode; // 保存节点} else {this.next.addNode(newNode); // 继续向下查找}}public void printNode() { // 输出节点System.out.println(this.name);if (this.next != null) { // 此节点之后还存在其他的节点this.next.printNode();}}};private Node root; // 链表的头public void add(String name) { // 增加节点Node newNode = new Node(name); // 定义一个新的节点/* * 如果是第一个节点,则肯定是根节点, 如果是第二个节点,则肯定放在根节点next中 如果是第三个节点,则肯定放在第二个节点的next中 */if (this.root == null) {this.root = newNode; // 将第一个节点设置成根节点} else {// 肯定要放在最后一个节点之后// 通过节点.next来不断的判断this.root.addNode(newNode);}}public void print() {if (this.root != null) { // 如果根节点为空了,则没有任何内容this.root.printNode();}}};?

?

?

热点排行