From e27921b1dbeaed2860cda46c284eae470b69d337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?mafan=EF=BC=88=E9=BA=BB=E5=87=A1=EF=BC=89?= Date: Mon, 15 Aug 2022 16:48:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E9=AB=98=E9=98=B6=E7=AC=AC?= =?UTF-8?q?=E4=B8=80=E9=83=A8=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../defer.json" | 6 ++++ .../1.Defer\350\257\255\345\217\245/defer.md" | 32 +++++++++++++++++++ .../error.json" | 6 ++++ .../error.md" | 22 +++++++++++++ .../file.json" | 6 ++++ .../file.md" | 22 +++++++++++++ .../4.\345\217\215\345\260\204/reflect.json" | 6 ++++ .../4.\345\217\215\345\260\204/reflect.md" | 22 +++++++++++++ 8 files changed, 122 insertions(+) create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.json" create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.md" create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.json" create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.md" create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.json" create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.md" create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.json" create mode 100644 "data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.md" diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.json" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.json" new file mode 100644 index 0000000..781917f --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.json" @@ -0,0 +1,6 @@ +{ + "type": "code_options", + "author": "dengmengmian", + "source": "defer.md", + "notebook_enable": false +} \ No newline at end of file diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.md" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.md" new file mode 100644 index 0000000..b61bc70 --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/1.Defer\350\257\255\345\217\245/defer.md" @@ -0,0 +1,32 @@ +# defer 语句的执行顺序 + +下面的程序的运行结果是: + +```Go +func main() { + if true { + defer fmt.Printf("1") + } else { + defer fmt.Printf("2") + } + fmt.Printf("3") +} +``` + +## 答案 + +31 + +## 选项 + +### A + +13 + +### B + +32 + +### C + +321 diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.json" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.json" new file mode 100644 index 0000000..4fb96c9 --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.json" @@ -0,0 +1,6 @@ +{ + "type": "code_options", + "author": "dengmengmian", + "source": "error.md", + "notebook_enable": false +} \ No newline at end of file diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.md" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.md" new file mode 100644 index 0000000..8eef6f3 --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/2.\351\224\231\350\257\257\345\244\204\347\220\206/error.md" @@ -0,0 +1,22 @@ +# 错误处理最佳实践 + +关于错误处理最佳实践说法错误的是: + + +## 答案 + +在程序启动的时候,如果有强依赖的服务出现故障时不要使用 panic + +## 选项 + +### A + +在错误处理时,尽量不要使用 panic 和 recover + +### B + +当 if err != nil 时及时返回错误,从而避免过多的代码嵌套 + +### C + +使用 New 函数创建自定义错误 diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.json" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.json" new file mode 100644 index 0000000..7168038 --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.json" @@ -0,0 +1,6 @@ +{ + "type": "code_options", + "author": "dengmengmian", + "source": "file.md", + "notebook_enable": false +} \ No newline at end of file diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.md" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.md" new file mode 100644 index 0000000..3884ec0 --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/3.\346\226\207\344\273\266\346\223\215\344\275\234/file.md" @@ -0,0 +1,22 @@ +# 文件权限 + +在 Linux 系统下,Go 创建文件没有权限,以下操作错误的是: + + +## 答案 + +使用 root 用户执行程序 + +## 选项 + +### A + + 修改对应用户的文件创建权限 + +### B + + 调用`os.MkdirAll` 方法给予权限 + +### C + +先创建文件,然后再改变文件的权限 diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.json" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.json" new file mode 100644 index 0000000..1b2e5b7 --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.json" @@ -0,0 +1,6 @@ +{ + "type": "code_options", + "author": "dengmengmian", + "source": "reflect.md", + "notebook_enable": false +} \ No newline at end of file diff --git "a/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.md" "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.md" new file mode 100644 index 0000000..9492239 --- /dev/null +++ "b/data/3.Go\350\257\255\350\250\200\351\253\230\351\230\266/1.\350\276\237\351\202\252\345\211\221\350\260\261/4.\345\217\215\345\260\204/reflect.md" @@ -0,0 +1,22 @@ +# 反射的使用 + + 关于反射说法错误的是: + + +## 答案 + +使用反射代码可维护性更高。 + +## 选项 + +### A + +反射是 Go 中的高级用法之一。是程序在运行时检查其变量和值并找到它们的类型的能力。 + +### B + +反射最常见的使用场景是做对象的序列化 + +### C + +使用反射编写清晰且可维护的代码非常困难。应尽可能避免使用,仅在绝对必要时使用。 -- GitLab