go - 程序结构

声明包

java和go都使用package来声明包,java中使用package的目的是:避免命名冲突、实现访问控制、提供类的定位搜索;比如在java的文件one.java和two.java中分别使用package来声明自己所在包的路径,用于对其他调用该类的地方提供唯一的访问路径;

在java中,包具有访问权限,某个调用具有访问某个包的权限时才可以访问该包中类

在go中,包的声明依旧使用package

引入包

同时再以java为例,假设存在两个文件,在one.java通过使用import来定位two.java声明的包的位置来搜索two.java所在的位置,从而达到操作two.java中方法和属性的目的。

java中需要把引入包的import语句写在声明包的package语句前面

在python中,包的引入和声明与java不同,在python中,一个文件夹中存在__init__.py文件时,才会被认为是一个python的package;在python中,使用import/from ... import ...来引入某个需要被调用某个包的类或者某个类的方法(所在路径)

在go中,包的引入依旧使用import,与java的使用习惯类似;使go与python的import对比,go中使用import引入的是,且引入某个包时需要加上"";python引入的是类/模块/方法/变量等;

格式化打印"hello"字符

package main
// 导入fmt包,fmt是一个包!
import "fmt"
func print_hello(){
    
    
    fmt.Print("hello")
}

go run 和 go build

go run运行源代码程序
go build生成二进制可执行文件


package main

每个go应用程序都包含一个名为main的包;

大写字母和小写字母(权限问题)

当一个包中的标识符使用大写字母开头,则该标识符可以被引入该包的调用者使用(public);当一个包中的标识符使用小写字母开头,则该标识符对包外是不可见的,而对包内是可见且可用(protected);

左花括号不能单独一行

在go中,定义函数时,左花括号不能够单独一行,否则会报错;(或许是强迫症开发者的任性)

猜你喜欢

转载自blog.csdn.net/qq_39378657/article/details/112642179