可能重复:
内部类的使用
我一直在寻找将使用内部类的主要原因,我到处都得到了最常见的答案Due to re-usability of the existing code
...... 但是,我们也可以通过在类之外定义一个类来实现这一点。不是吗?
class MyOuterClass {
private class MyOnClickListener implements OnClickListener {
@Override
public void onClick(View view) {
mTts.speak(words.getText().toString(), TextToSpeech.QUEUE_ADD, null);
}
}
// later (inside some method)...
speakBtn.setOnClickListener(new MyOnClickListener());
}
这MyOnClickListener
是内部类,稍后以与普通类相同的方式创建对象new MyOnClickListener()
。那么,主要区别是什么,原因,已经介绍过了。