首页 > 编程语言 >关于Java的静态与非静态引起的问题

关于Java的静态与非静态引起的问题

时间:2024-12-30 15:27:58浏览次数:3  
标签:Java 静态 add int Add static 与非 new fact

package Static.non;

public class Add {

    public int add(int a,int b){//这里是非static
        return a+b;
    }
    public static int fact (int a){//这里是static
        if(a==1){
            return 1;
        } else {
            return a*fact(a-1);
        }
    }
    public static void main(String[] args) {
        Add a = new Add();
        int b = new Add().add(1,3);
        System.out.println(a.add(2,4)+" "+b);
        //上面的调用方法,我们先创建一个实例(对象)(就是new Add()),然后通过实例(对象)的方法来处理该实例的数据,在这里体现为我调用add()方法
        System.out.println(Add.fact(5));
        //这个调用方法,我们直接使用类名Add()(文件名)来调用方法fact(a,b);就行了
    }
}

上面这段代码其实解决了一个问题,就是说你如果使用静态的方法去调用非静态的方法的话它会报错的,解决办法是什么呢(你可以按住alt键加回车键,这个快捷键会帮你找到错误并且为你提供修改建议)?

1.你可以在方法add前加上static将这个方法也变成静态方法,然后加上static的方法是不是就变成了fact这个方法了,接着使用类名(文件名)调用是不是就行了

2.你也可以通过new一个新的实例对象,然后通过对实例对象进行操作来处理数据,就是这段 代码:

 Add a = new Add();
        int b = new Add().add(1,3);
        System.out.println(a.add(2,4)+" "+b);

这两种方法都是比较好用的。

到这里就结束啦!!!

欢迎小伙伴们评论区讨论,提问。

我是荒古前,期待你的关注~~~

~~~完结撒花✌y( •̀ ω •́ )y✌~~~

标签:Java,静态,add,int,Add,static,与非,new,fact
From: https://blog.csdn.net/x3477144355/article/details/144824928

相关文章

  • java面试题大全及答案
    1、创建线程的三种方式的对比?(1)采用实现Runnable、Callable接口的方式创建多线程。优势是:线程类只是实现了Runnable接口或Callable接口,还可以继承其他类。在这种方式下,多个线程可以共享同一个target对象,所以非常适合多个相同线程来处理同一份资源的情况,从而可以将C......
  • 史上最全Java面试题总结(2025年持续更新.....)
    1.类的线程安全我们经常说类是线程安全的,类是线程不安全的。那么什么样的类才是线程安全的?1.1定义多线程环境下,不管不同的线程如何使用和调度这个类,这个类总是表现出正确的行为。那么这个类就是线程安全的。类的线程安全有两个关键点:1.操作的原子性2.内存的可见性。如......
  • JavaScript开发中常见问题代码和相关优化Demo参考5.0
    41. 过度使用全局状态管理问题代码:在小型项目中引入了复杂的全局状态管理库(如Redux),增加了不必要的复杂性。解决方案:对于小型应用或简单状态管理需求,考虑使用React的useState和useContext,或者Vuex等框架自带的状态管理功能。//使用ReactContextAPIconstThemeContext=......
  • 【已下offer】2024西安华为 Java 面经
    西安华为Java面经​ 写在前面,推荐这个ai面试产品,多面鹅ai,真的很好用。在面试前已经模拟面试准备过很多次,多亏了多面鹅帮我模拟面试还复盘,给了我很大的帮助!还有线上面试同步ai辅助提醒的功能,但是我没用,有用过的小伙伴可以分享一下经验!OfferGoose多面鹅官网- AI面试模......
  • 西安华为 Java 面经 【已接offer】
    西安华为Java面经 写在前面,推荐这个ai面试产品,多面鹅ai,真的很好用。在面试前已经模拟面试准备过很多次,多亏了多面鹅帮我模拟面试还复盘,给了我很大的帮助!还有线上面试同步ai辅助提醒的功能,但是我没用,有用过的小伙伴可以分享一下经验!OfferGoose多面鹅官网- AI面试模拟|......
  • Java难绷知识03——包装器类及其自动装箱和拆箱
    Java难绷知识03——包装器类及其自动装箱和拆箱本篇文章和之前的倾向稍微有些不同,这篇文章我不仅要讨论一些容易头疼的细节,而且我打算尝试讨论一下如何理解Java中的包装类以及自动拆箱和自动装箱自动装箱(Autoboxing)和自动拆箱(Unboxing)是在基本数据类型和它们对应的包装类之间“......
  • 使用 httputils + sbe (Simple Binary Encoding) 实现金融级 java rpc
    1、认识SimpleBinaryEncoding(sbe)高性能Java库Agrona的主要目标是减少性能瓶颈,通过提供线程安全的直接和原子缓冲区、无装箱操作的原始类型列表、开散列映射和集合以及锁-free队列等,为开发者在处理并发和低延迟场景时提供强大工具。SimpleBinaryEncoding(sbe)是Agr......
  • 课程思政元素收集系统|Java|SSM|JSP| 
                  【技术栈】1⃣️:架构:B/S、MVC2⃣️:系统环境:Windowsh/Mac3⃣️:开发环境:IDEA、JDK1.8、Maven、Mysql5.7+4⃣️:技术栈:Java、Mysql、SSM、Mybatis-Plus、JSP、jquery,html5⃣️数据库可视化工具:navicat6⃣️服务器:SpringBoot自带apachetom......
  • 列车票务信息系统|Java|SSM|JSP| 
                  【技术栈】1⃣️:架构:B/S、MVC2⃣️:系统环境:Windowsh/Mac3⃣️:开发环境:IDEA、JDK1.8、Maven、Mysql5.7+4⃣️:技术栈:Java、Mysql、SSM、Mybatis-Plus、JSP、jquery,html5⃣️数据库可视化工具:navicat6⃣️服务器:SpringBoot自带apachetom......
  • 基于 Java 大数据的旅游推荐系统的设计与实现
    标题:基于Java大数据的旅游推荐系统的设计与实现内容:1.摘要随着人们生活水平的提高和旅游行业的快速发展,越来越多的人选择旅游作为休闲和放松的方式。然而,在旅游过程中,人们常常面临着信息过载和选择困难的问题,不知道如何选择适合自己的旅游景点和旅游路线。为了解决这个问......