Java通过内部类实现回调功能

来源:互联网 发布:wifi direct软件 编辑:程序博客网 时间:2024/06/05 11:45
一个类,因为不方便直接修改内部的属性,所以可以通过回调的方式来进行。
public class Animal { private int weight;  public int getWeight() {  return weight; } public void setWeight(int weight) {  this.weight = weight; } public class WeightAdjust{  void adjust(int weight){setWeight(weight);} } public WeightAdjust getWeightAdjust(){  return new WeightAdjust(); } public Animal(int weight) {  this.weight = weight; }}


下面是回调的方法:
public static void main(String[] args) {  Animal animal = new Animal(15);  animal.getWeightAdjust().adjust(19);  System.out.println(animal.getWeight());}


上面的代码中,通过利用成员内部类可以持有所寄生的外部类的特性,利用内部类来完成了回调的功能,这种方式在很多代码中都被使用,比如线程,比如集合的比较器。

作者 陈字文(热衷于PM\ORACLE\JAVA等,欢迎同行交流):ziwen#163.com 扣扣:4零9零2零1零零
原创粉丝点击