四点区别:可否为空,可否修改,使用时是否需要判断,使用场景非空区别。引用必须指向某个对象,而指针可以指向空。可修改区别。引用总是与初始化时的那个对象绑定,不可变更;指针可以重新赋值,指向另外一个对象。合法性区别。引用使用前不需要测试其合法性;但是指针使用前要判断其是否指向空地址。应用区别。考虑到存在不指向任何对象,以及,能过指向不同对象的时候考虑使用指针;指向一个对象并并且一旦指向后就不改变指向则使用引用。