当前位置: 首页 > 知识库问答 >
问题:

线程“main”java中出现异常。lang.错误:未解析变量

牟飞沉
2023-03-14

线程“main”java中出现异常。错误:为什么我的参数变量不能解析为变量?

我正在尝试创建一个简单的程序,创建people类的两个对象,给它们命名,并使第一个对象(“lisa”)成为第二个对象(“mark”)的朋友,最后在屏幕上显示/打印lisa的朋友。

但Eclipse显示以下错误:

线程“main”java中出现异常。错误:未解决的编译问题:lisa无法解析为变量标记无法解析为变量lisa无法解析为变量语法错误,请插入“;”要完成语句,类型People at People的方法friend()未定义。main(People.java:22)

正如您所知,我对Java非常陌生,所以我无法理解错误的含义以及如何修复它。非常感谢你的帮助!

这是我的人民课:

公共类人物{

//Constructor
public void name(String name) {
    this.name = name;
}


// Instance variables
public String name; 
public String friend;

// Instance method
public void addFriend(String name){
name = Object1.friend();

}

以下是我的主要方法:

公共静态void main(字符串[]args){

    People Object1 = new People();
    Object1.name(lisa);

    People Object2 = new People();
    Object2.name(mark);

    Object1.addFriend(lisa);

    System.out.println(Object1.friend());

}

}

共有1个答案

燕扬
2023-03-14

而不是

People Object1 = new People();
Object1.name(lisa);

你应该写:

People people = new People();
people.name("lisa");

首先注意“lisa”周围的引号。没有这些引号Java将把它解释为变量名,而不是字符串(这是类People中name()方法的签名所要求的)。Java中,为了代码的可读性,用小字母写像“Object1”这样的变量名是一种常见的惯例。以下是甲骨文的指导方针。

 类似资料: