Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam quis ex dapibus, auctor nisi quis, ornare sapien. Sed sit amet placerat augue. Quisque accumsan ultricies justo. Fusce aliquet arcu ut mi luctus facilisis. Donec luctus est sem, blandit pellentesque dui sodales ac. Donec aliquet quam maximus magna egestas auctor. Etiam id neque sed lacus aliquet suscipit. Donec sit amet purus vitae tellus aliquet bibendum id sit amet metus. Nulla facilisi.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam quis ex dapibus, auctor nisi quis, ornare sapien. Sed sit amet placerat augue. Quisque accumsan ultricies justo. Fusce aliquet arcu ut mi luctus facilisis. Donec luctus est sem, blandit pellentesque dui sodales ac. Donec aliquet quam maximus magna egestas auctor. Etiam id neque sed lacus aliquet suscipit. Donec sit amet purus vitae tellus aliquet bibendum id sit amet metus. Nulla facilisi.
-- Users --
- 500k
- 1 mill
star
star
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam quis ex dapibus, auctor nisi quis, ornare sapien. Sed sit amet placerat augue. Quisque accumsan ultricies justo. Fusce aliquet arcu ut mi luctus facilisis. Donec luctus est sem, blandit pellentesque dui sodales ac. Donec aliquet quam maximus magna egestas auctor. Etiam id neque sed lacus aliquet suscipit. Donec sit amet purus vitae tellus aliquet bibendum id sit amet metus. Nulla facilisi.
link
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam quis ex dapibus, auctor nisi quis, ornare sapien. Sed sit amet placerat augue. Quisque accumsan ultricies justo. Fusce aliquet arcu ut mi luctus facilisis. Donec luctus est sem, blandit pellentesque dui sodales ac. Donec aliquet quam maximus magna egestas auctor. Etiam id neque sed lacus aliquet suscipit. Donec sit amet purus vitae tellus aliquet bibendum id sit amet metus. Nulla facilisi.
www.year4000.net
www.year4000.net
linkwww.year4000.net
www.year4000.netlink
spinner
class Class {
constructor() {
// Do Stuff
}
}
Logobeta
1
align-justify
starImportant
class Class {
constructor() {
// Do Stuff
}
doSomething() {
let x = 5 + 6
return x
}
}
star
coffee
adjust
align-justify
This text has highlight on it.
This text has highlight tooltip on it.
This text has a link highlight v1.0.0 to click on.
This text has a link highlight
star
v1.0.0
to click on.
center
Left Top
Left Bottom
Right
Tooltip
•
Image Tooltip
•
The contents
Button Tooltip
•
Left Tooltip
### Java Signatures
Below are signature types for [Java types](#).
For a method you use `([Ljava/lang/String;)V` represents a method with an argument of String[] and returns `void`.
- `V` void
- `J` long
- `I` int
- `B` byte
- `Z` boolean
- `D` double
- `S` short
- `F` float
- `C` char
- `[` array
- `L;` object
- `()` method
### Proxy Interface
The *proxy interface* lets us access an object's instance at **runtime**.
This is allows us to create code for a system that we know is available at runtime but not possible to have at compile time.
Every proxy object has special handling for `$this()`.
It will grab the underlying instance that the proxy is proxing.
We use the return type `Object` for instances that are not known at compile time.
If the instance is known at compile time you may substitute the return type.
#### Standard Practices
- Proxy objects should include a static method that will create the proxy instance.
- Proxy objects should include `Object $this()`
- Setters and Getter should avoid `set` and `get` prefix as visibility views are ignored
- Use default methods to provide additional functionality
This snippet shows how to set up a very basic Proxy interface and standard practices
```java
@Proxied("path.to.Object")
public interface ProxyObject {
// standard practice - allow creating proxies of the instance
static ProxyObject of(Object instance) {
return Gateways.proxy(ProxyObject.class, instance);
}
// standard practice - allow retrieving the proxying instance
Object $this();
}
```