20210104声明、定义、初始化,赋值,实例,实例化与类与对象、实现等这些词的含义(golang)(2) 实例,实例化、类、对象、实现 - ziyouzy/2021blog GitHub Wiki
实例化其实是一种结果
或许从书写角度对于golang来说,实例化可以特指被make或new关键词所修饰的操作
他是定义某种数据类型变量后所形成的结果:
i := 3或var j int =4最正确的解释是这样的:
i是一个“简单数据类型int”的“实例”;
var i是“声明”了一个“简单数据类型int”的“实例”,这个“实例”的名称是i
var i int连起来的话,"int"这个词则代表了“定义”了一个数据类型为int的变量i
这一套整体下来的结果则是“实例化”了一个数据类型为i的变量/对象
只有变量才可以被称为对象,自定义数据类型、内置数据类型都不行
而变量和对象的区别在于对象只是定义后的产物,而变量则是声明所得的名称+定义所得的实体合在一起
接口类型的变量 var i I同样可以直接完成这一系操作
对于类来说,golang中特指结构类,程序员自己设计的结构类属于自定义数据类型
“自己设计”的这一过程就被称作"声明",只不过声明的是一个自定义数据类型
同时也可以“声明”map(如map[string]int),func(如func(int,int)error)等
总结:
声明+定义+初始化一个变量
定义可以实例化出一个对象,但是只定义的话这个对象不会有变量名
通过声明可以让一个对象拥有变量名,从而变成一个完整的变量
核心思路:类是对象的抽象,对象是类的实例
总之这些东西,怎么说都行
重点在于当和其他程序员交流时,不要出现把声明说成定义,把定义说成声明,或者把声明说成实例话,这种逻辑上实在说不同的话