## Why is this an issue?

JDK7 introduced the class `java.nio.charset.StandardCharsets`. It provides constants for all charsets that are guaranteed to be available on every implementation of the Java platform.

- ISO_8859_1
- US_ASCII
- UTF_16
- UTF_16BE
- UTF_16LE
- UTF_8

These constants should be preferred to:

- the use of a String such as "UTF-8" which has the drawback of requiring the `catch`/`throw` of an `UnsupportedEncodingException` that will never actually happen
- the use of Guava’s `Charsets` class, which has been obsolete since JDK7

### Noncompliant code example

    try {
      byte[] bytes = string.getBytes("UTF-8"); // Noncompliant; use a String instead of StandardCharsets.UTF_8
    } catch (UnsupportedEncodingException e) {
      throw new AssertionError(e);
    }
    // ...
    byte[] bytes = string.getBytes(Charsets.UTF_8); // Noncompliant; Guava way obsolete since JDK7

### Compliant solution

    byte[] bytes = string.getBytes(StandardCharsets.UTF_8)