java 内部类使用方法

 

 

public interface Contents {  //一个接口
    int value();
}

public interface Destination {  //接口
    String readLabel();
}

public class Goods {  //外部类
	private int num =2;  //外部类方法
	
    public int getNum() {
		return num;
	}
	public void setNum(int num) {
		this.num = num;
	}
	
	 private class Content implements Contents {//内部类
        private int i = 11*num;    //内部类可以使用外部类的所有属性包括私有的   但如果类是static的就不能使用外部类属性和方法了 内部类为static的话 就没有了指向外部类的引用  
       
        public int value() { 
        	System.out.println(i);
            return i; 
        }
    }//0453 8587319

    protected class GDestination implements Destination {//内部类
        private String label;
        private GDestination(String whereTo) {
            label = whereTo;
        }
        public String readLabel() { 
            return label; 
        }
    }

    public Destination dest(String s) {
        return new GDestination(s); // 返回内部对象
    }
    public Contents cont() {// 返回内部对象
        return new Content();
    }
}


@Test
	public void test(){

		
		Goods p = new Goods();
        Contents c = p.cont();
        p.setNum(100);
        //Destination d = p.dest("Beijing");
        c.value();
	}

你可能感兴趣的:(java,C++,c,C#)