1、存储方式:值类型是直接存储数据本身;而引用类型存储的是数据的引用,数据存储在数据堆中
2、内存分配:值类型是分配在栈中的;引用类型是分配在堆中
3、效率:值类型效率高,不需要地址转换;引用类型效率较低,需要地址转换
4、内存回收:值类型使用完后立即回收;引用类型使用完后不立即回收,而是交给GC处理回收
5、赋值操作:值类型创建一个对象;引用类型创建一个引用
6、类型扩展:值类型不易扩展,所有值类型都是密封的,所以无法派生出新的值类型;引用类型具有多态的特性方便扩展
7、实例分配:值类型实是在线程栈上分配的(也称为静态分配),但是在某些情形下可以存储在堆中;引用类型总是在进程堆中分配(动态分配)