Question: I can't answer completely "why should we call "**void**" is '**return type**'?"

*How do I prove that "**void**" is a type?*

Answer: 
Hope 
[class void](http://download.oracle.com/javase/6/docs/api/java/lang/Void.html) explains why void is a type.

> 
> The Void class is an uninstantiable placeholder class to hold a
>  reference to the Class object representing the Java keyword void.
> 
> 
> 

```
public final class Void extends Object

```
Any class method must specify a return type. The 'void' keyword can be specified, specifying that it has no return type, for example:

```
public void SetPantsSize(int width);

```

There is also a void class: 
<http://download.oracle.com/javase/6/docs/api/java/lang/Void.html>