Java基础—Java方法的调用
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方法的调用的更多相关文章
- java基础---->java中正则表达式二
跟正则表达式相关的类有:Pattern.Matcher和String.今天我们就开始Java中正则表达式的学习. Pattern和Matcher的理解 一.正则表达式的使用方法 一般推荐使用的方式如下 ...
- Java基础-Java中23种设计模式之常用的设计模式
Java基础-Java中23种设计模式之常用的设计模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.设计模式分类 设计模式是针对特定场景给出的专家级的解决方案.总的来说设 ...
- Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)
Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在学习Java的之前,你可能已经听说过读 ...
- Java基础-Java中的堆内存和离堆内存机制
Java基础-Java中的堆内存和离堆内存机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.
- Java基础-Java中的内存分配与回收机制
Java基础-Java中的内存分配与回收机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. 二.
- Java基础-Java中的并法库之线程池技术
Java基础-Java中的并法库之线程池技术 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是线程池技术 二.
- Java基础-JAVA中常见的数据结构介绍
Java基础-JAVA中常见的数据结构介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是数据结构 答:数据结构是指数据存储的组织方式.大致上分为线性表.栈(Stack) ...
- Java基础-Java数据类型
Java基础-Java数据类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据类型的作用 数据类型就是一组值,以及这一组值上的操作,数据类型可以决定数据的存储方式,取值范围 ...
- 2.Java基础:方法定义和调用
一.方法的定义 1.类的方法代表的是实力的某种行为(或功能) 方法的定义:方法类型 . 方法签名 . 方法体 2.定义类的方法 访问修饰符 类型 方法名(参数列表){ ///方法体 } 3.把方法当作 ...
随机推荐
- from lxml import etree报错
使用的是python3.7的环境,解析数据要用xpath,系统是mac pip install lxml一分钟后...下载成功 开始写代码, from lxml import etree挂了-,lxm ...
- 【应用程序见解 Application Insights】使用Azure Monitor Application Insights Agent获取Azure VM中监控数据及IIS请求指标等信息
问题情形 为了使用Application Insights也可以监控Azure VM中的相关性能数据,如CPU, Memory,IIS Reuqest等信息,可以在VM中开始一个一个扩展插件: Azu ...
- 非常全面的讲解SpringCloud中Zuul网关原理及其配置,看它就够了!
Zuul是spring cloud中的微服务网关.网关:是一个网络整体系统中的前置门户入口.请求首先通过网关,进行路径的路由,定位到具体的服务节点上. Zuul是一个微服务网关,首先是一个微服务.也是 ...
- 来自朋友最近阿里、腾讯、美团等P7岗位面试题
来自年初和最近朋友的大厂面试题. 阿里巴巴 对象如何进行深拷贝,除了clone happen-before原则 jvm调优的实践 单例对象会被jvm的gc时回收吗 redis如果list较大,怎么优化 ...
- 框架篇:Linux零拷贝机制和FileChannel
前言 大白话解释,零拷贝就是没有把数据从一个存储区域拷贝到另一个存储区域.但是没有数据的复制,怎么可能实现数据的传输呢?其实我们在java NIO.netty.kafka遇到的零拷贝,并不是不复制数据 ...
- 谈谈nginx和lvs各自的优缺点以及使用
在最开始呢,咱们先说一下什么叫负载均衡,负载均衡呢,就是将一批请求,根据请求的内容,分发到不同的后端去进行相应的处理,从而提供负载分担,主备切换等功能. ...
- Java8新特性探索之函数式接口
一.为什么引入函数式接口 作为Java函数式编程爱好者,我们都知道方法引用和 Lambda 表达式都必须被赋值,同时赋值需要类型信息才能使编译器保证类型的正确性. 我们先看一个Lambda代码示例: ...
- Linux下如何使用X86 CPU的GPIO
目录 1.前言 2.linux pinctrl子系统 3. pin controller driver 4.手动构造device 1.前言 在arm嵌入式开发中,各个外设具有固定的物理地址,我们可以直 ...
- 利用CNN进行中文文本分类(数据集是复旦中文语料)
利用TfidfVectorizer进行中文文本分类(数据集是复旦中文语料) 利用RNN进行中文文本分类(数据集是复旦中文语料) 上一节我们利用了RNN(GRU)对中文文本进行了分类,本节我们将继续使用 ...
- 【USACO】Cow Brainiacs
题意描述 Cow Brainiacs 求 \(n!\) 在 \(b\) 进制表示下的第一位非 \(0\) 位的数字. 算法分析 闲话 忙人自动略过 之前做过一道 \(10\) 进制表示下的题目,感觉差 ...