java与golang区别_golang与java语法上的区分_后端开发

047dc7519300d0d92e5b12e057306977.png

变量声明与赋值

Java:

int i; // 声明

int j = 1; // 声明+赋值

Go:

var i int // 声明

i := 1 // 声明+赋值

1、变量声明:var是关键字,花样:var 变量称号 变量范例

2、变量声明与赋值: := 标记支撑自动推导范例

非常处置惩罚

Java:

574545b3b7f889e373e82305288871c8.png

Go:

1b55ea93d9b836380012becd12dd1e96.png

go的非常是做为函数返回值的,经由过程推断是不是存在error,来推断非常。 (不能够像Java一样抛出非常)

go的if语句支撑初始条件,即先实行if以后的语句(分号之前),再实行分号以后的推断语句,此语句常常用于非常处置惩罚。

go的大括号必需在行末go函数或许变量为”公有”,首字母大写,”私有”则小写。

参数通报

e76fb3ec698851235ac60009bb8c1f90.png

change函数是通报的对象,函数挪用的时刻,会拿到对象的拷贝。

change2函数是通报的指针,函数挪用的时刻,会拿到一个指向改对象的指针。

go没有援用通报

多态

此例有点长,是一个求面积的问题,针对与圆形和矩形两种范例

java:

java.lang.Math;public class Polymorphism{

public static class Rectangle implements Areable{ //矩形 double width;

double height;

public Rectangle(double width,double height){

this.width = width;

this.height = height;}

public double area(){

return width * height;}

}

public static class Circle implements Areable{ // 圆形 double radius;

public Circle(double radius){

this.radius = radius;}

public double area(){

return radius * radius * Math.PI;}

} public static interface Areable{

double area();

}public static void main(String[] args){

Areable arear = new Rectangle(5.0,5.0);

Areable areac = new Circle(2.5);

System.out.println(arear.area());

System.out.println(areac.area());

}

}

Go:

package main

import (

"fmt"

"math"

)

type Rectangle struct { // 矩形

width float64

height float64

}

type Circle struct { // 圆形

radius float64

}

type Areable interface{ // 接口:一组method署名的组合,经由过程interface来定义对象的一组行动。

// 只如果完成了interface中的一切的method的构造体,就能够认为是这个interface的实例,Duck typing

area() float64

}

func (r Rectangle) /* 函数的接受者Receiver */ area() float64 /* 返回值范例*/ {

return r.width * r.height

}

func (c Circle) /* 函数的另一个接受者Receiver */ area() float64 /* 返回值范例*/{

return c.radius * c.radius * math.Pi

}

func main(){

ra := Rectangle{5,5}

ca := Circle{2.5}

fmt.Println(ra.area())

fmt.Println(ca.area())

}

相干文章教程:golang教程

以上就是golang与java语法上的区分的细致内容,更多请关注ki4网别的相干文章!

收藏 | 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值