本篇文章给大家谈谈javathis指针内存,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、java中的this问题2、java程序中的this是指什么?具体问题如下:希望可以回答的详细一些。3、和this.有什么不同’ title=’java/c++里的this->和this.有什么不同’>java/c++里的this->和this.有什么不同
java中的this问题
首先java对于对象的内存管理是这样的
泛泛的说 一个类所有的对象 他们共享一个代码段 各自有各自的数据区
所以当你要执行一个语句时 比如a++;或者sort();
他就必须知道是哪各一对象要执行这行代码,然后找到那个对象的数据区 取出数据 如果有必要再取出这个类的代码区 交个cpu去运算
this就相当一个指针,指向正在跑的那个对象,对于程序员来讲可写可不写
当源程序 .java 到中间吗.class的是时候会补充所有的this.
比如你写一个类:
class Test{
private String a;
public void foo()
{
a=new String();
}
}
形成中间码.class后会变成
class Test{
private String a;
public void foo()
{
this.a=new String();
}
}
编程者是用的面向对象的思想 可是电脑可没那么聪明 他还是要知道是哪个对象要去执行这个代码的
你是想在在单按钮左边加个图标是吧
jMenu3.setIcon(new javax.swing.ImageIcon(“…………”));
省略号的地方填图的路径
java程序中的this是指什么?具体问题如下:希望可以回答的详细一些。
我回答你吧。
this是一个指针(虽然java没有指针类型,但底层实现是有指针的)。指向的是哪里呢?是本对象的地址。也就是TryText这个类实例化的对象的地址。准确说是对象在堆空间中的地址。
使用this指针访问方法那很显然是类的方法,如果本类没有那就是父类的。访问变量呢?是堆空间中存储的变量,堆空间存哪些变量呢?存的是成员变量。当然也可以用this访问静态变量,那是通过对象找到方法区中的类,进而找到类的静态变量。
如果你还不明白的话,那一定是对对象和类了解的不够清晰。
对于你这一道题,this指的是本对象,具体是哪个对象,这里是看不到的,那要看实例化Trytext的地方。如果你写了Trytext text = new Trytext();那么this指的就是text。
和this.有什么不同’>java/c++里的this->和this.有什么不同
不知道java,java中好像没有指针的概念,我这里说一下c++中的this指针。c++里不能用this 点的 ,因为this是指针不是对象,在c++中this指针就是代表对象 ,更本质的说法就是对象的内存地址, 比如 class test {} ; test ob; test *p = ob; //这时ob的值和 this指针的值是一样的。
其实你关键理解为什么有this指针。在用c语言写顺序表的时候我们一般这样写。
struct list { int *pstart; int maxsize, last_inx;}
对于这样的 数据结构,我们要操作它的时候,比如列出里面的所有元素。我们会有函数:
void show(list *plist) { ….. }
在c++中,因为使用了类,所以我们可以直接把数据和操作封装在一起,比如
class list {
public:
void show(); // 注意这里,对比用c语言写的函数,这里少了一个参数,list *plist;
private: int *pstart; int maxsize, last_inx;
};
省略的那个参数就是所谓的this指针了,在c++中我们常用 list ob; ob.show()这样调用。
它的意思就是说 对于ob这个对象,或者说这块内存,我要进行show操作……
观楼主英俊潇洒,风流倜傥,关注0x30百度贴吧,必成千秋大业,建不世之功。
javathis指针内存的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、javathis指针内存的信息别忘了在本站进行查找喔。