我啥时候应该参加内部课程[关闭]
Posted
技术标签:
【中文标题】我啥时候应该参加内部课程[关闭]【英文标题】:When exactly i should go for inner classes [closed]我什么时候应该参加内部课程[关闭] 【发布时间】:2014-12-18 05:52:53 【问题描述】:我不需要内部类。任何人都可以给出情景和理由。内部类与另一个类到底有什么不同。
【问题讨论】:
您用于singleton object
使用inner class
以供进一步参考使用(docs.oracle.com/javase/tutorial/java/javaOO/whentouse.html)
你检查docs了吗?
【参考方案1】:
来自javadocs
如果您需要访问封闭实例的非公共字段和方法,请使用非静态嵌套类(或内部类)。如果您不需要此访问权限,请使用静态嵌套类。
例如,您想创建一个与另一个类密切相关并且可能仅由该类使用的类,那么将其作为该类的内部类是有意义的,而不是为其创建单独的类文件.内部类还可以访问封闭类的私有字段,如果您只想在一个类中使用它们并将其他所有内容设为私有,这将很有用,然后您可以将该类设为内部。
【讨论】:
【参考方案2】:java中的内部类基本上有3个原因。它们如下:
1) 内部类代表一种特殊类型的关系,它可以访问包括私有在内的外部类的所有成员(数据成员和方法)。
2) 内部类用于开发更具可读性和可维护性的代码,因为它在逻辑上仅将类和接口分组在一个位置。
3) 代码优化:需要更少的代码编写。
解释:
BalaYesu 解释过,内部类可用于多线程编程,您可以通过按键盘上的“Enter”或“Return”键发送消息的聊天引擎示例更好地理解这一点.因此,“Enter”键可以被认为是一个触发对发送消息方法之一的调用的事件。而且,如果我们的聊天客户端类想要检测是否有人在窗口中打字,那么很明显会触发调用的事件就是有人在打字——所以我们需要一些代码来实时检测某人何时在窗口中真正打字– 基本上是当他们在聊天窗口中按下按钮时。这就是创建内部类的原因。内部类的实例可以访问外部类实例的成员,因为内部类只是外部类的另一个成员。而且,内部类甚至可以访问外部类的私有成员
参考:- Inner Classes Explained & Inner Classes
【讨论】:
问题已修复。谢谢@TheLostMind以上是关于我啥时候应该参加内部课程[关闭]的主要内容,如果未能解决你的问题,请参考以下文章