什么是包装器类? 这样的类有什么用处呢?
当前回答
Java编程为每个基元数据类型提供包装类,用于将基元数据类型转换为包装类的对应对象。
其他回答
In general, a wrapper class is any class which "wraps" or "encapsulates" the functionality of another class or component. These are useful by providing a level of abstraction from the implementation of the underlying class or component; for example, wrapper classes that wrap COM components can manage the process of invoking the COM component without bothering the calling code with it. They can also simplify the use of the underlying object by reducing the number interface points involved; frequently, this makes for more secure use of underlying components.
我目前在我的项目中使用了一个包装器类,我得到的主要好处(只是一个扩大主题解释的好处):
异常处理:我的主类(另一个类包装的类)具有在发生异常时抛出异常的方法,因此我创建了一个包装类来处理异常并立即记录它们。因此,在我的主作用域中,没有异常处理。我只是调用一个方法并做一些事情。
易于使用:我可以很容易地启动对象。通常起始阶段由很多步骤组成。
代码可读性:当另一个程序员打开我的代码时,代码看起来非常清晰,易于操作。
隐藏细节:如果你正在生成另一个程序员将要使用的类,那么你可以包装细节,如“错误处理,异常处理,日志消息等……”,这样程序员就不必处理混乱,只需要简单地使用方法。
有几种设计模式可以称为包装器类。
请参阅我对“代理、装饰器、适配器和桥接模式有何不同?”
包装器类是一个包装另一个类并提供客户端和被包装的原始类之间的抽象的类。
一个包装类不一定需要包装另一个类。它可能是一个API类,在一个dll文件中包装功能。
例如,创建一个dll包装类可能非常有用,它负责所有dll的初始化和清理,并创建类方法来包装从GetProcAddress()创建的函数指针。
干杯!