package cn.sycoder.LinkedList;
public class Node {
private Node next;
private Object ele;
public void delete(Object ele) {
if (ele.equals(this.getEle())) {
this.setEle(null);
return;
}
Node prv = this;
Node next = this.next;
while (prv.getNext() != null) {
if(!ele.equals(next.getEle())){
prv = next;
next = next.getNext();
}else{
prv.setNext(next.getNext());
return;
}
}
}
public void add(Object ele) {
Node node = new Node();
node.setEle(ele);
if (this.next == null) {
this.next = node;
} else {
Node next = this.next;
while (next.getNext() != null) {
next = next.getNext();
}
next.setNext(node);
}
}
public Node getNext() {
return next;
}
public void setNext(Node next) {
this.next = next;
}
public Object getEle() {
return ele;
}
public void setEle(Object ele) {
this.ele = ele;
}
}
上面的代码命名为“节点”,下面的代码命名为“测试”
package cn.sycoder.LinkedList;
public class Test {
public static void main(String[] args) {
Node node = new Node();
node.setEle("A");
node.add("b");
node.add("C");
node.add("d");
node.add("e");
node.add("f");
node.add("g");
node.delete("d");
System.out.println("----");
}
}
我们都知道这一点。在java中,引用实例字段,在测试代码中,我们首先创建一个新的对象节点,在节点代码中,我们还创建了许多带有“new”的对象,我的问题是,在这种情况下,“this.and this”指的是什么?
在类中,当您使用this时,这意味着您从该类创建的对象以及当您使用时。在此之后,您只需访问您有权访问的类的属性或方法。
你似乎不明白this
是什么。
您可以在类的非静态方法中使用此(注意,您不能从静态方法引用实例成员),例如:
class A {
private int number;
public int getNumber() {
return this.number;
}
}
如果之后,您将有:
A a = new A();
创建了A
的特定实例,并将其存储在堆内存中的某个位置(假设它是在x123
地址创建的)。
现在,您有了一个由a引用的对象,该对象有一个方法getNumber()
,该方法反过来在其主体中有这个。
每当(除非a
引用的对象被垃圾收集/释放)调用特定方法(a
引用的对象)时,如:
a.getNumber();
这个
在当前执行的getNumber()中,将引用当前/特定的实例,我们当前正在其上调用getNumber()(例如,存储在地址x123的对象,为了更好的可读性,Java允许我们通过标识符来寻址(a,在这种情况下))。
问题内容: 我从事Java编程已有2年了,显然我遇到了一个问题,无法再次理解和区分类,引用和对象(我不明白为什么我忘记了这些概念)。 让我们来解决这个问题,尽管我已经知道对象是什么,但是我不确定类或引用是否相同。 有人可以很好地理解并且完整地区分什么是类,引用和对象吗? 我所知道的是,该类更像是对象的模板(房屋的蓝图,其中类是蓝图,而房屋是一个对象)。 问题答案: 如果你喜欢隐喻: 一堂课就像一所
问题内容: 在阅读有关Java线程的文章时,我经常注意到这样的表达:“当前线程是该对象的监视器的所有者”。我的意思是:线程有权在对象上进行操作。但是我很困惑,为什么我们使用“对象的监视器”而不是“对象的锁”? 简而言之,我不知道“监视”一词的含义。这个问题可能很奇怪而且很简单。但我希望任何人都能帮助解决它。3ks 问题答案: 但是我感到困惑的是为什么要在“对象的锁”中使用“对象的监视器”一词呢?
问题内容: 我有类GUI,因此可以创建如下对象: 和像这样的参考变量: 现在,据我所知,g2是引用GUI类的引用变量,而g1是GUI类的对象。g1和g2有什么区别?我可以将GUI类的属性与对象一起使用,但是g2的可能用法是什么? 问题答案: 参考是名称。对象就是东西。您可以为事物使用不同的名称,即使对于实际上不存在的事物也可以使用不同的名称。 您可以声明名称,而无需实际给它们任何“真实的”含义,例
问题内容: 作为程序员,我认为它们看起来像“地址为1a234552的java.lang.Object”或类似sin 它是否正确?因此,所有参考均固定大小吗? 问题答案: 尽管在许多VM上,引用的大小是本机指针大小(即32位JVM为32位,而64位JVM为64位),但不能保证-特别是HotSpot现在或不久将支持“ “压缩的糟糕”是在64位JVM中的32位引用。(这并不意味着每个参考都经过压缩-请阅
问题内容: 什么是Java中的对象引用变量? 参考变量是否保存对象的内存地址? 我很困惑。请说明一下。 问题答案: 我不确定我是否有能力正确回答这个问题,但是… 对象是类的实例,它存储在内存中的某些位置 引用是用来描述指向对象所在的内存位置的指针的。 变量是一种可以访问应用程序中该内存位置的方法(其值为“变量”)。尽管变量只能指向单个内存地址(如果不为空),则在应用程序的整个生命周期中,它可能会更
这三个方法包含相同的参数,所以不应该重载。它们都有执行不同功能的代码。这怎么可能?java如何知道调用哪个方法?在命令行中通过java jar命令执行此代码时,我没有得到任何错误。