java static在成员方法中
package java08; public class Myclass {
int num;//成员变量
static int numStatic;//静态变量 //成员方法
public void method(){
System.out.println("这是一个成员方法!");
//成员方法可以访问成员变量
System.out.println(num);
//成员方法可以访问静态变量
System.out.println(numStatic);
}
public static void methodStatic(){
System.out.println("这是一个静态方法!");
//静态方法可以访问静态变量
System.out.println(numStatic);
//静态不能直接访问非静态【重点】
// System.out.println(num);//错误写法 //静态方法中不能使用this关键字
// System.out.println(this);//错误写法
}
}
package java08;
/*
一旦使用static修饰成员方法,就成为了静态方法,静态方法不属于对象,而是属于类的 如果没有static关键字,那么必须首先创建对象,然后通过对象才能使用它
如果有了static关键字,那么就不需要创建对象,直接通过类名称来使用它 无论是成员变量还是成员方法,如果有了static,都推荐使用类名称进行调用
静态变量: 类名称.静态变量
静态方法: 类名称.静态方法 注意事项:
1、静态不能直接访问非静态
原因:因为在内存中是【先】有静态内容【后】有的非静态内容
“先人不知道后人,但是后人不知道先人”
2、静态方法中不能用this
原因:this代表当前对象,通过谁调用的方法,谁就是当前对象。
* */
public class DemoStaticMethod {
public static void main(String[] args) {
Myclass obj = new Myclass();//首先创建对象
//然后才能使用没有static关键字的内容
obj.method(); //对于静态方法来说,可以通过对象名进行调用,也可以通过类名称来调用
obj.methodStatic();//正确,不推荐
Myclass.methodStatic();//正确,推荐 // 对于本来当中的静态方法,可以省略类名称
myMethod();
DemoStaticMethod.myMethod();//完全等效 }
public static void myMethod(){
System.out.println("自己的方法!");
}
}
java static在成员方法中的更多相关文章
- java static 在java 中的使用。
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static修饰的成员变量和成员方法独立于该类的任何 ...
- Java关键字final、static使用总结 (final static在容器中不可以改变容器但可以改变存放)
一.final 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.你可能出于两种理解而需要阻止改变:设计或效 ...
- 092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 02 static关键字(中)
092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- java为什么非静态内部类中不能有static修饰的属性,但却可以有常量?
如:public class InnerClassDemo{int x;class A{static int a = 0;//这样写是不合法的.static final int b=0;//这样写是合 ...
- JAVA static 作用
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static修饰的成员变量和成员方法独立于该类的任何 ...
- java static关键字
方便在没有创建对象的情况下来进行调用(方法/变量). 很显然,被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问. static可以用来修饰类的 ...
- 【转载】java static 关键字的四种用法
原文链接点这里,感谢博主分享 在java的关键字中,static和final是两个我们必须掌握的关键字.不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构 ...
- [java]static关键字的四种用法
在java的关键字中,static和final是两个我们必须掌握的关键字.不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构.下面我们先来了解一下stat ...
- Java static和final
java提高篇(七)-----关键字static static 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中static表示“全局”或者“静 ...
随机推荐
- springboot2.0 Mybatis 整合
原文:https://blog.csdn.net/Winter_chen001/article/details/80010967 环境/版本一览: 开发工具:Intellij IDEA 2017.1. ...
- [CSP-S模拟测试]:棋盘(数学+高精度)
题目描述 在一个大小为$N\times N$的棋盘上,放置了$N$个黑色的棋子.并且,对于棋盘的每一行和每一列,有且只有一个棋子.现在,你的任务是再往棋盘上放置$N$个白色的棋子.显然,白色棋子不能与 ...
- 在浏览器地址栏中查看cookie
在IE地址栏中输入javascript:alert(document.cookie) 或者地址栏直接打javascript:document.write(document.cookie);
- python 使用xlsxwriter的方法属性
http://xlsxwriter.readthedocs.io/format.html
- 屏幕分辨率测试工具(舍弃)---chrome开发者工具devTools(强烈建议系统学习)
2019-01-25 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...
- SHADER 用 step替代 if-else
今天聊起这个问题,百度发现了这个优化方式: https://blog.csdn.net/liu_if_else/article/details/77455639
- STM32 实现内部Flash的读写(HAL库版)
Flash 中文名字叫闪存,是一种长寿命的非易失性(断电数据不丢失)的存储器.可以对称为块的存储器单元块进行擦写和再编程,在进行写入操作之前必须先执行擦除.一个Nand Flash由多个块(Block ...
- vscode左侧文件不同颜色标识含义
代码里的左侧颜色标识: 红色,未加入版本控制; (刚clone到本地)绿色,已经加入版本控制暂未提交; (新增部分)蓝色,加入版本控制,已提交,有改动: (修改部分)白色,加入版本控制,已提交,无改动 ...
- vue- 指令v-if 与指令v-show的区别
区别1: v-if :可以根据表达式的值在DOM中生成或移除一个元素. v-show:可以根据表达式的值来显示或者隐藏HTML元素.当v-show赋值为false时,元素被隐藏,此时查看代码时,该元素 ...
- JSP基础--三大指令
JSP指令 1 JSP指令概述 JSP指令的格式:<%@指令名 attr1=”” attr2=”” %>,一般都会把JSP指令放到JSP文件的最上方,但这不是必须的. JSP中 ...