Java方法的调用个主要有以下几种:

    1.调用非静态方法
2.调用静态方法
3.方法与方法之间的调用
(1).静态方法内部调用其他方法
(2).非静态方法内部调用

1.调用非静态方法:

    非静态方法的调用,是通过对象名来调用的
对象名.方法()

代码演示:

  public class EG {      // EG:类名  eg:对象名

      public static void main(String[] args) {

          // 通过new关键字来调用构造方法EG(),实例化对象并取名为eg
EG eg = new EG(); // 调用非静态方法 对象名.方法()
eg.introduction();
} /**
* 1.非静态方法
* 非静态方法就是没有static修饰的方法,对于非静态方法的调用,是通过对象名来调用的
* 对象名.方法()
*/
public void introduction() {
System.out.println("you know what i mean when you run it");
}
} 运行结果: you know what i mean when you run it

2.调用静态方法:

          静态方法的调用是通过类名来调用的:类名.方法()
也可直接调用

代码演示:

  public class EG {      // EG:类名  eg:对象名

      public static void main(String[] args) {

          // 通过new关键字来调用构造方法EG(),实例化对象并取名为eg
EG eg = new EG(); // 调用静态方法 类名.方法()
System.out.println(EG.add());
// 调用静态方法也可以直接调用
System.out.printIn(add());
} /**
* 2.静态方法就是用 static 修饰的方法,静态方法的调用是通过类名来调用的:类名.方法()
* @return
*/
public static int add() {
int a = 0;
for (int i = 0; i < 5; i++) {
a += i;
}
return a ;
}
} 运行结果: 10
10

3.方法与方法之间的调用

(1).静态方法内部调用其他方法:

          静态方法可直接调用静态方法,除了在 main 方法中,还可以在自定义的静态方法中直接调用。
如果在本类当中是非静态方法,就必须通过对象来调用。
如果不在一个类当中,静态方法调用其他类中的静态方法,必须通过:类名.静态方法();
如果在不同类当中,静态方法调用其他类的非静态方法,需要导入该类中的包,以及通过创建对象调用。

代码演示:

  public class EG {

      public static void main(String[] args) {
// 静态方法直接调用静态方法
test1(); // run: this is test1
test2(); // run: this is test1 this is test2
}
public static void test1() {
System.out.println("this is test1");
} public static void test2() {
test1();
System.out.println("this is test2");
} } 运行结果 :
this is test1
this is test1
this is test2

(2)非静态方法内部调用:

          如果在本类中,非静态方法可以直接调用静态方法与非静态方法。
在不同类中,非静态方法调用其他类的静态方法,需要通过导入该类中的包,并且需要通过类名来调用
在不用类中,非静态方法调用其他类的非静态方法时,需要导入该类中的包,还需要通过创建对象来调用

代码演示:

  public class EG {
public static void main(String[] args) { // 通过new关键字来调用构造方法EG(),实例化对象并取名为eg
EG eg = new EG();
// 通过对象名.方法名()调用得静态方法
eg.introduction();
} public void introduction() {
System.out.println("you know what i mean when you run it");
// 在本类中,非静态方法可以直接调用静态方法与非静态方法。
introduction2();
} public void introduction2() {
System.out.println("这个类用来展示非静态类调用非静态类");
}
} 运行结果:
you know what i mean when you run it
这个类用来展示非静态类调用非静态类

Java基础—Java方法的调用的更多相关文章

  1. java基础---->java中正则表达式二

    跟正则表达式相关的类有:Pattern.Matcher和String.今天我们就开始Java中正则表达式的学习. Pattern和Matcher的理解 一.正则表达式的使用方法 一般推荐使用的方式如下 ...

  2. Java基础-Java中23种设计模式之常用的设计模式

    Java基础-Java中23种设计模式之常用的设计模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.设计模式分类 设计模式是针对特定场景给出的专家级的解决方案.总的来说设 ...

  3. Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)

    Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在学习Java的之前,你可能已经听说过读 ...

  4. Java基础-Java中的堆内存和离堆内存机制

    Java基础-Java中的堆内存和离堆内存机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  5. Java基础-Java中的内存分配与回收机制

    Java基础-Java中的内存分配与回收机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. 二.

  6. Java基础-Java中的并法库之线程池技术

    Java基础-Java中的并法库之线程池技术 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是线程池技术 二.

  7. Java基础-JAVA中常见的数据结构介绍

    Java基础-JAVA中常见的数据结构介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是数据结构 答:数据结构是指数据存储的组织方式.大致上分为线性表.栈(Stack) ...

  8. Java基础-Java数据类型

    Java基础-Java数据类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据类型的作用 数据类型就是一组值,以及这一组值上的操作,数据类型可以决定数据的存储方式,取值范围 ...

  9. 2.Java基础:方法定义和调用

    一.方法的定义 1.类的方法代表的是实力的某种行为(或功能) 方法的定义:方法类型 . 方法签名 . 方法体 2.定义类的方法 访问修饰符 类型 方法名(参数列表){ ///方法体 } 3.把方法当作 ...

随机推荐

  1. 前端基础——HTML(二)

    HTML标签 标题标签<h1>.<h2>.<h3>.<h4>,标题标签之间是不能嵌套的,下一级标题与上级标题之间通过同级 关于书写,下级标题解释说明的是 ...

  2. 栈和堆 - JS

    原始值 - Stack (栈) Number String Boolean undefined null 引用值 - Heap (堆) array object function ...data Re ...

  3. VirtualXposed结合justTrustMe 模块傻瓜式破解app没法抓包问题

    一.首先就是按照这两个apk 声明仅供学习 justTrustMe 链接:https://pan.baidu.com/s/1av3oaez4y4n6a9C1I0VsAg 提取码:mjqg Virtua ...

  4. centos7启用EPEL Repository

    1,下载库文件 http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm 2,安装 r ...

  5. net core 微服务框架 Viper 调用链路追踪

    1.Viper是什么? Viper 是.NET平台下的Anno微服务框架的一个示例项目.入门简单.安全.稳定.高可用.全平台可监控.底层通讯可以随意切换thrift grpc. 自带服务发现.调用链追 ...

  6. 分区表的表进行update操作

    今天对一张创建了分区表的表进行update操作,正好需要修改的是创建分区的那一列,由于是要修改在分区表范围内的数据,所以无法修改. 然后搜了一下,需要修改row movement这个属性:alter ...

  7. RS485转以太网的概述和应用领域

    如今随着物联网技术的不断发展,各种接口更新换代的速度非常的快,RS485转以太网的主要作用就是提供串口转TCP/IP网络接口的功能,它可以将RS232/485/422串口转换成TCP/IP网络接口,实 ...

  8. AQS源码深入分析之独占模式-ReentrantLock锁特性详解

    本文基于JDK-8u261源码分析 相信大部分人知道AQS是因为ReentrantLock,ReentrantLock的底层是使用AQS来实现的.还有一部分人知道共享锁(Semaphore/Count ...

  9. Kubernetes YAML最佳实践和策略

    Kubernetes工作负载最常用YAML格式的文件来定义. YAML的问题之一就是很难描述清单文件之间的约束或关系. 如果你希望检查是否已从受信任的注册表中提取部署到群集中的所有映像,该怎么办? 如 ...

  10. 【KataDaily 191015】Sort the Gift Code

    题目: Happy Holidays fellow Code Warriors! Santa's senior gift organizer Elf developed a way to repres ...