IE盒子

搜索

Java 值类型预览——Project Valhalla 最新进展

[复制链接]

3

主题

8

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2023-1-18 01:12:57 | 显示全部楼层
看完了也没太看明白这种实现方式比C#强在哪
回复

使用道具 举报

5

主题

12

帖子

20

积分

新手上路

Rank: 1

积分
20
发表于 2023-1-18 01:13:24 | 显示全部楼层
什么意思呀,是指类型默认为引用语义么[好奇]
回复

使用道具 举报

5

主题

17

帖子

29

积分

新手上路

Rank: 1

积分
29
发表于 2023-1-18 01:14:13 | 显示全部楼层
答主开头就提到了和C#之间的差异以及为什么答主更看好JVM
放到末尾可能说有人没看完,放在开头没看我是想不到解释了
回复

使用道具 举报

0

主题

4

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2023-1-18 01:14:47 | 显示全部楼层
所以是,成员变量不可变就可以用值对象,不需要并发安全就可以梭哈原始对象?
回复

使用道具 举报

4

主题

8

帖子

15

积分

新手上路

Rank: 1

积分
15
发表于 2023-1-18 01:15:17 | 显示全部楼层
在尽量保持兼容性的基础上实现了Java语言的现代化
回复

使用道具 举报

5

主题

12

帖子

22

积分

新手上路

Rank: 1

积分
22
发表于 2023-1-18 01:15:43 | 显示全部楼层
一年两个版本很快了
回复

使用道具 举报

2

主题

5

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-1-18 01:16:42 | 显示全部楼层
赶紧落地
回复

使用道具 举报

2

主题

5

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-1-18 01:17:40 | 显示全部楼层
不是强或者不强,而是路线不同。
C# 尤其是近几个版本,很明显在突出它的名字:“C++++”。这不好吗?并不是,这确实带来了很大的性能提升。
Project Valhalla 的方案很好用吗?也不是,identity-free 带来的限制很大,比如字段全 final,所以你要说它多好用那也算不上,只能说概念上简单学习难度低,不会带来很多复杂的问题。
但是,初次见到 Project Valhalla 的方案时真的让我眼前一亮,因为它是真的在以托管语言的思路在设计值类型。它表象上和传统值类型殊途同归,但阅读文档的时候很明显能感受到它设计思路上的差别。
所以我喜欢它的地方在于,它是真的在沿着托管这条路前进。这个方向并不一定就好,但是我喜欢,而且我认为沿着这个方向发展或许能开辟一片新天地。
回复

使用道具 举报

5

主题

15

帖子

32

积分

新手上路

Rank: 1

积分
32
发表于 2023-1-18 01:18:38 | 显示全部楼层
目前值对象作为成员变量与常规对象没有区别,只能确保作为方法局部变量时分配到栈上。
回复

使用道具 举报

4

主题

10

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2023-1-18 01:18:53 | 显示全部楼层
JAVA想要的是,程序员只管new,jvm和编译器来决定放在堆上还是栈上。但是没能完全实现,还需要程序员手动声明一下这个对象能不能放在栈上
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表