PHP To Go 转型手记 (三)

栏目: PHP · 发布时间: 6年前

内容简介:作为一名PHP程序员,我感到荣幸。但在时代不断的变迁中,要具备足够的知识才可生存。那就从Go语言学起把。

PHP To Go 转型手记 (三)

前言

作为一名 PHP 程序员,我感到荣幸。但在时代不断的变迁中,要具备足够的知识才可生存。

那就从 Go 语言学起把。

希望看到本篇文章的你可以对Go有一个基本的认识。本系列文章与我自己学习Go语言的方式去描述。以PHP代码与Go代码的对比加以区分理解。

Go没有类的概念,本章在语法使用上来对比PHP与Go之间的区别。

声明类

PHP

class User{}

Go

type User struct{}

成员变量

PHP

class User{
    public $name;
    public $age;
}

Go

type User struct {
    username string
    age      int
}

变量修饰

PHP

class User{
    public $name;
    private $age;
}

Go

// 没有看错,Go中没有保护(protected),变量名首字母大写为public,小写为private
type User struct {
    Username string
    Age      int
}

成员方法

PHP

class User{
    public $name;
    public $age;
    
    function setName(){
        
    }
    
    function getName(){
    
    }
}

Go

type User struct {
    username string
    age      int
}

func (u User) setName(name string) bool {
    u.username = name

    return true
}

func (u User) getName() string {
    return u.username
}

初始化

PHP

// php 没有构造方法的话,新建对象无需传参数
new User();

Go

// go 内结构体声明的变量是可选参数,既可传可不传,go既没有类概念,所以也没有构造方法。
User{"zhangsan",15}

使用

PHP

$user = new User();
$user->getName();

Go

u := User{"zhangsan",15}
fmt.Println(u.getName())

致谢

感谢你看到这里,希望本篇文章可以帮到你。谢谢


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

失控

失控

[美] 凯文·凯利 / 东西文库 / 新星出版社 / 2010-12 / 88.00元

《失控》,全名为《失控:机器、社会与经济的新生物学》(Out of Control: The New Biology of Machines, Social Systems, and the Economic World)。 2006年,《长尾》作者克里斯·安德森在亚马逊网站上这样评价该书: “这可能是90年代最重要的一本书”,并且是“少有的一年比一年卖得好的书”。“尽管书中的一些例子......一起来看看 《失控》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

MD5 加密
MD5 加密

MD5 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具