Like in Java, at the most basic level Go source is a stream of characters often viewed as a sequence of lines. Go files are written (as is typically true in Java) in UTF-8 encoding. Go does not have a preprocessor like Java has to process Unicode escapes into raw characters; all Unicode characters are treated the same, and escapes can only appear inside of string or character literals, not in identifiers or elsewhere.
Like in Java, the characters are grouped into constructs called whitespace (sequences of spaces, ...