Golang 类的封装的程序

Golang 类的封装的程序

在本文中,我们将使用Golang程序来学习类中的封装

Go语言中的封装与其他面向对象语言的比较 - 面向对象语言中的类的变量或数据对于该类是私有的,只能通过类中的任何成员函数来访问。然而,Go语言不支持类和对象。因此,在Go编程语言中使用包来实现封装。Go提供了导出和未导出标识符,这是两种不同的标识符形式。从包中导出变量、函数、方法、字段和结构可以实现封装,并帮助管理这些元素的可见性(变量、函数、方法、字段、结构)。如果它们所在的包在程序中存在,这些项目就是可见的。

  • Go编程语言中的导出标识符 - 在指定它们的包中被导出的标识符被称为导出标识符。这些标识符始终以大写字母开头。大写字母表示导出标识符,也就是所给定的标识符是导出标识符。导出的标识符只在其所在的包内有效。当你从包中导出它时,只导出所提供的标识符的名称,而不是它的实现。此外,这种方法也可用于字段、方法和结构。

  • Go编程语言中的未导出标识符 - 未从任何包中导出的标识符称为未导出标识符。它们都是小写的。如下面的示例所示,添加函数没有与任何包关联,因此它不是一个导出的函数,它的可见性仅对此应用程序可用。

示例1

使用导出标识符在Go编程语言中实现封装 –

现在让我们看一个示例,通过使用导出的函数的封装概念来将字符串数组转换为大写。

package main

import (
   "fmt"
   "strings"
)

// fmt package allows us to print anything on the screen.
// strings package allows us to use other predefined functions like ToUpper()

// calling the main function
func main() {

   // creating an array of strings and assigning values to it
   arr := []string{"apple", "banana", "fruits"}

   // converting the letters of the string declared above to uppercase using ToUpper()
   // method defined in strings package.
   fmt.Println("Successfully converted array of strings to upper case using Exported method ToUpper() defined in strings package")
   fmt.Println("The resultant string is:")
   for x := 0; x < len(arr); x++ {

      // calling the exported method ToUpper()
      // storing the result in a new array called results
      results := strings.ToUpper(arr[x])

      // printing the result on the screen
      fmt.Println(results)
   }
}

输出

Successfully converted array of strings to upper case using Exported method ToUpper() defined in strings package
The resultant string is:
APPLE
BANANA
FRUITS

描述

  • 首先,我们需要导入所需的包,如fmt和strings。fmt包允许我们在屏幕上打印任何内容,strings包允许我们使用在其中定义的其他预定义方法,如ToUpper()。

  • 调用主函数。这是我们程序的起始点。

  • 初始化一个字符串数组,并将字符串值存储在其中。

  • 现在开始一个for循环,索引遍历数组,并使用string.ToUpper()函数将数组的每个元素转换为大写,并将结果数组存储在results中。

  • 现在,使用fmt.Println()函数在屏幕上打印结果。

示例2

使用未导出的标识符封装封装go编程语言中的概念 –

现在,让我们考虑一个示例,在这个示例中,我们将通过使用未导出的函数来封装数组的整数和。

package main
import "fmt"

// fmt package allows us to print anything on the screen
// defining an unexported function addition to find the sum of an array of integers
// this function receives an array of integers as an argument and returns the integer value as the sum
func addition(val []int) int {
   s := 0

   for x := range val {
      s += val[x]
   }
   return s
}

// Calling the main function
func main() {

   // defining an array of integers and storing values in it
   arr := []int{50, 29, 36, 55, 87, 95}

   // calling then unexported method addition() to find the sum of the array and passing the
   // array to it as
   // an argument and storing the result in a separate variable
   result := addition(arr)

   // printing the result on the screen
   fmt.Println("Successfully found the sum of an array of integers using UNExported method addition()")
   fmt.Println("The resultant sum is:")
   fmt.Println(result)
}

输出

Successfully found the sum of an array of integers using UNExported method addition()
The resultant sum is:
352

描述

  • 首先,我们需要导入fmt包。fmt包允许我们在屏幕上打印任何内容。

  • 初始化并定义一个名为addition()的方法,以求出整数数组的总和。该函数接受一个整数数组作为参数,并计算其总和。然后返回结果。

  • 调用主函数。这是我们程序的起点。

  • 初始化一个整数数组,并在其中存储值。

  • 现在通过将数组作为参数传递给addition函数来调用它。请注意,在调用addition函数时,首字母小写,这意味着该函数未被导出,定义在主函数中。

  • 现在,将结果存储在另一个变量中并在屏幕上打印出来。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程