In Go programming language, functions can be defined as either private or public, which determines their accessibility from outside the package. A function can be accessed from another package only if it is declared as public, while a private function can only be accessed within the same package.