# URLImpl

public final class **URLImpl** extends [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html)  
J2ObjC-specific delegate of `https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html`, to support the separation
of jre_net dependencies from jre_core. URL needs to be core because core
classes like ClassLoader reference URL publicly.

### Public Constructor Summary

|---|---|
|   | [URLImpl](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#URLImpl())() |

### Public Method Summary

|---|---|
| boolean | [equals](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#equals(java.net.URL,%20java.net.URL))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u1, [URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u2) |
| int | [getDefaultPort](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#getDefaultPort(java.net.URL))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url) |
| [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) | [getURLStreamHandler](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#getURLStreamHandler(java.lang.String))([String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) protocol) Returns the Stream Handler. |
| int | [hashCode](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#hashCode(java.net.URL))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url) |
| void | [initURL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#initURL(java.net.URL,%20java.net.URL,%20java.lang.String,%20java.lang.Object))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url, [URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) context, [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) spec, [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) handler) |
| [URLConnection](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLConnection.html) | [openConnection](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#openConnection(java.net.URL))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url) |
| [URLConnection](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLConnection.html) | [openConnection](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#openConnection(java.net.URL,%20java.lang.Object))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url, [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) proxy) |
| boolean | [sameFile](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#sameFile(java.net.URL,%20java.net.URL))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u1, [URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u2) |
| void | [setURLStreamHandlerFactory](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#setURLStreamHandlerFactory(java.lang.Object))([Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) fac) |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [toExternalForm](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLImpl.html#toExternalForm(java.net.URL))([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url) |

### Inherited Method Summary

From class [java.lang.Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html)

|---|---|
| [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) | [clone](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#clone())() Creates and returns a copy of this `Object`. |
| boolean | [equals](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#equals(java.lang.Object))([Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) obj) Compares this instance with the specified object and indicates if they are equal. |
| void | [finalize](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#finalize())() Invoked when the garbage collector has detected that this instance is no longer reachable. |
| final [Class](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Class.html)\<?\> | [getClass](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#getClass())() Returns the unique instance of `https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Class.html` that represents this object's class. |
| int | [hashCode](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#hashCode())() Returns an integer hash code for this object. |
| final void | [notify](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#notify())() Causes a thread which is waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |
| final void | [notifyAll](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#notifyAll())() Causes all threads which are waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [toString](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#toString())() Returns a string containing a concise, human-readable description of this object. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait(long,%20int))(long timeout, int nanos) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait(long))(long timeout) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait())() Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object. |

## Public Constructors

#### public
**URLImpl**
()

<br />

## Public Methods

#### public boolean
**equals**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u1, [URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u2)

<br />

##### Parameters

| u1 |   |
| u2 |   |
|---|---|

##### Throws

| [MalformedURLException](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/MalformedURLException.html) |   |
|---|---|

#### public int
**getDefaultPort**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url)

<br />

##### Parameters

| url |   |
|---|---|

##### Throws

| [MalformedURLException](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/MalformedURLException.html) |   |
|---|---|

#### public [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html)
**getURLStreamHandler**
([String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) protocol)

Returns the Stream Handler.

##### Parameters

| protocol | the protocol to use |
|---|---|

#### public int
**hashCode**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url)

<br />

##### Parameters

| url |   |
|---|---|

##### Throws

| [MalformedURLException](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/MalformedURLException.html) |   |
|---|---|

#### public void
**initURL**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url, [URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) context, [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) spec, [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) handler)

<br />

##### Parameters

| url |   |
| context |   |
| spec |   |
| handler |   |
|---|---|

##### Throws

| [MalformedURLException](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/MalformedURLException.html) |   |
|---|---|

#### public [URLConnection](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLConnection.html)
**openConnection**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url)

<br />

##### Parameters

| url |   |
|---|---|

##### Throws

| [IOException](https://developers.google.com/j2objc/javadoc/jre/reference/java/io/IOException.html) |   |
|---|---|

#### public [URLConnection](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URLConnection.html)
**openConnection**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url, [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) proxy)

<br />

##### Parameters

| url |   |
| proxy |   |
|---|---|

##### Throws

| [IOException](https://developers.google.com/j2objc/javadoc/jre/reference/java/io/IOException.html) |   |
|---|---|

#### public boolean
**sameFile**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u1, [URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) u2)

<br />

##### Parameters

| u1 |   |
| u2 |   |
|---|---|

##### Throws

| [MalformedURLException](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/MalformedURLException.html) |   |
|---|---|

#### public void
**setURLStreamHandlerFactory**
([Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) fac)

<br />

##### Parameters

| fac |   |
|---|---|

#### public [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html)
**toExternalForm**
([URL](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/URL.html) url)

<br />

##### Parameters

| url |   |
|---|---|

##### Throws

| [MalformedURLException](https://developers.google.com/j2objc/javadoc/jre/reference/java/net/MalformedURLException.html) |   |
|---|---|