static(静态)方法和非static(非静态)方法的声明和调用

您所在的位置:网站首页 java非静态变量 static(静态)方法和非static(非静态)方法的声明和调用

static(静态)方法和非static(非静态)方法的声明和调用

2023-11-21 11:02| 来源: 网络整理| 查看: 265

static(静态)方法和非static(非静态)方法的声明和调用

在刚刚接触java的时候,发现有些方法声明时带有static,有些方法声明时不带有static。关于静态方法和非静态方法的具体区别,可以参考这篇博文静态与非静态方法以及变量。

当然,对于初学者来说,想要完全理解内部的原理还是有些困难,可以先学会如何声明调用这两类方法,在实践中多多体会它们的异同。以下提供了一些代码,结合注释可以帮助初学者大致明白静态方法和非静态方法的声明和调用。

 

/*** * 总而言之,就是调用static方法时,不需要new新的对象,只需要声明类; * 调用非static方法时,需要new对应类的新对象。 * 在实际应用过程中,static方法通常是用于工具类,也就是可以被多次复用的方法, * 普通的方法通常是非static方法 */ class TestTwo { //创建类TestTwo的静态方法 public static void staticMethodTestTwo(){ System.out.println("运行staticMethodTestTwo"); } //创建类TestTwo的非静态方法 public void methodTestTwo(){ System.out.println("运行methodTestTwo"); } } public class TestOne { //创建类TestOne的静态方法 public static void staticMethodTestOne(){ System.out.println("运行staticMethodTestOne"); TestTwo.staticMethodTestTwo();//static方法里调用它类的static方法 new TestOne().methodTestOne();//static方法里调用本类的非static方法 new TestTwo().methodTestTwo();//static方法里调用它类的非static方法 } //创建类TestOne的非静态方法 public void methodTestOne(){ System.out.println("运行methodTestOne"); staticMethodTestOne();//非static方法里调用本类static方法 new TestTwo().methodTestTwo();//非static方法里调用它类非static方法 TestTwo.staticMethodTestTwo();//非static方法里调用它类static方法 } //main方法,static public static void main(String[] args) { staticMethodTestOne();//main方法里调用本类的static方法,不需要new对象 new TestOne().methodTestOne();//main方法里调用本类的非static方法,需要new对应类的对象 TestTwo.staticMethodTestTwo();//main方法里调用它类static方法,需要体现类,不需要new对象 new TestTwo().methodTestTwo();//main方法里调用它类非static方法,需要new对应类的对象 } }

代码在运行过程中会由于嵌套调用无法结束运行,最终报错,但无伤大雅。将代码复制到IIDEA中,没有标红,即代表正确声明和调用了两类方法。

 

 

 

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3