代码中我没有添加主方法 idea中运行键不亮,然后代码中也报错no usages 类中一定要主方法吗


package objectOriented;
代码中我没有添加主方法 idea中运行键不亮,然后代码中也报错no usages  类中一定要主方法吗。
public class Phone {
    //属性
    String brand;
    double price;
    //行为
    public void call(){
        System.out.println("手机在打电话");
    }
    public void playGame(){
        System.out.println("手机在玩游戏");
    }

}

img

Phone不需要,Test中有就行。no usages是提醒你这个属性或者方法没有地方调用,不是问题。

不用main 方法我知道的有以下几种情况可以运行:
1、web 项目,通过网络请求去调用你的方法
2、单例测试

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这篇文章:算法第4版如何在idea上运行?
  • 除此之外, 这篇博客: 代码没问题,但是idea依然报错的解决方法中的 问题描述 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    idea有时候会出bug,即使代码没问题,也会有提示代码错误。

  • 以下回答来自chatgpt:

    当我们在使用IDEA运行代码时,如果没有添加主方法,运行键不会亮起来,无法直接运行代码。同时,在代码中可能会出现no usages的错误提示,表示该类没有被使用。

    但并不是所有的类都需要添加主方法。只有当我们希望直接运行这个类时,才需要添加主方法。如果我们在这个类中定义了一些方法或变量,可以在其他类中调用,那么就不需要添加主方法了。

    下面是一个示例代码,在该类中我们没有添加主方法,但定义了一个方法和一个变量,可以在其他类中进行调用。

    public class MyClass {
        private int count = 0;
    
        public void increaseCount() {
            count++;
        }
    
        public int getCount() {
            return count;
        }
    }
    

    如果我们希望测试这个类,可以新建一个测试类,在其中调用该类中的方法和变量。

    public class TestClass {
        public static void main(String[] args) {
            MyClass myClass = new MyClass();
            myClass.increaseCount();
            System.out.println(myClass.getCount());
        }
    }
    

    在该测试类中,我们创建了一个MyClass的对象,调用了该类中的increaseCount()方法,然后通过getCount()方法获取到了count变量的值,并输出到控制台上。

    通过这样的方式,我们可以直接测试和调用MyClass类中的方法和变量,而不需要在该类中添加主方法了。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^