现行的所有编程语言其表达能力都是一样的,其他语言能做的另一语言都能做到,只是实现方法不一样。在所有的高级语言中只有c有指针的概念(当然c++也有,不过我们就把他看成c的超集)。java中没有像c那样的指针,这是java的内存管理机制所决定。c的指针非常灵活,程序员可以随意的修改,但也因为这一点,也使c在开发的过程中稍不注意容易照成内存的泄露,访问了不该访问的内存等。在c和其他语言比较起来,只有指针是其特有的,也因此使其更加简洁,高效,也是c目前还非常流行的原因之一。
指针是指向一块数据块的
class a
{
}
如果 a* temp;
temp 为4个字节
1. 如果这个对象包含有成千上万个数据,那么 a这个对象就非常大
2. 相信你知道 a1=a;把,如果是对象,把一个对象赋值给另外一个对象,那么会有很大一块内存的拷贝了,很费时间的,但是如果是指针的话,就是4个字节的拷贝了。a1* temp =&a2;
所以这就是指针的优点所在。这只是其中一点。。
不同语言有不同的特点,但是大家都能做到同一件事,只是方法不同罢了
你想知道到底C语言强大还是java语言强大吧,你的意思好像是英语能够表达的意思,汉语能否表达,答案当然是肯定的。
java只是把指针模糊化了。。
指针比对象灵活,用起来更加野性。当然蕴含的风险也会相应提高。