java的静态方法的使用
静态的方法和属性,你可以这么理解,就是所有对象公用的,比如一个属性是这样定义的:
private static String name;
那么他的意思就是说,因为他是静态的,我所有的对象的name属性全部都一样,
如果我有n个这个类的对象,我改变其中一个对象的name属性,所有的对象的name属性全部会变化。所以,static关键字的特点,你可以理解为公用性。
同样的,静态方法和非静态方法的区别也显而易见,因为所有的对象都拥有同样的东西,那么静态方法,通常我们不会用对象去调用,而是直接用类名去点。
因为这个类的所有对象的这个方法都是公用的。
而且静态方法中是不允许使用this关键字的,因为它并不唯一属于任何一个对象,而是大家共有的。
静态方法在JVM加载时放入内存了,在程序的运行过程中随时可以调用,不需要去实例化对象,在容器销毁前,这个对象一直在内存中,如果你所有的方法都是静态的,那么对你的内存要求过高
非静态方法所在对象,你什么时候想要就实例化这个对象,实例化后才放入内存中,待不用了之后,JAVA 的GC机制会回收不用的内存,而你的静态方法所在的对象一直在内存中。
java的静态方法的使用的更多相关文章
- <转>java中静态方法和非静态方法的存储
Java中非静态方法是否共用同一块内存? 将某 class 产生出一个 instance 之后,此 class 所有的 instance field 都会新增一份,那么所有的 instance met ...
- Java 中 静态方法与非静态方法的区别
静态方法和实例方法的区别主要体现在两个方面: 在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式.而实例方法只有后面这种方 ...
- java之静态方法与非静态方法
1.静态方法最大的特点就是,不用生成类的实例对象,直接可以用. 2.它的语法格式:<类名|实例名>.<类变量名> 3.Java中的静态方法中,在方法声明时前面要加static ...
- java中静态方法的使用
JAVA中使用静态方法 编程时我们心里一定要清楚静态方法和类的非静态方法方法的区别: 最根本区别从编译角度来说吧: 1) 静态(static)方法是编译时直接加载加载到内存中(离cpu最近的一块内存区 ...
- JAVA的静态方法,静态变量,静态类。
静态变量和静态方法都属于静态对象,它与非静态对象的差别需要做个说明. (1)Java静态对象和非静态对象有什么区别? 比对如下: 静态对象 ...
- 【转】java中静态方法和非静态方法的存储
将某 class 产生出一个 instance 之后,此 class 所有的 instance field 都会新增一份,那么所有的 instance method 是否也会新增一份?答案是不会,我们 ...
- java中静态方法和非静态方法调用的一点小困扰,已解决。
public static void main(String[] args) { // TODO Auto-generated method stub SimpleGui1B gui=new Simp ...
- java中静态方法中为什么不能使用this、super和直接调用非静态方法
这个要从java的内存机制去分析,首先当你New 一个对象的时候,并不是先在堆中为对象开辟内存空间,而是先将类中的静态方法(带有static修饰的静态函数)的代码加载到一个叫做方法区的地方,然后再在堆 ...
- 在java中静态方法与非静态方法
在java中public void与public static void有什么区别 ? public void 修饰是非静态方法,该类方法属于对象,在对象初始化(new Object())后才能被调用 ...
随机推荐
- Ansible Filter
没啥好说的. 自己看吧 http://docs.ansible.com/ansible/playbooks_filters.html
- Angular2 + NativeScript 跨平台开发笔记(一)
NativeScript 是一款跟 ReactNative 对着怼的移动开发技术,其官方钦定了 Angular2 作为推荐的技术框架,那么如何让在浏览器中运行的 Angular2 Web app 项目 ...
- 引用AForge.video.ffmpeg,打开时会报错:找不到指定的模块,需要把发行包第三方文件externals\ffmpeg\bin里的dll文件拷到windows的system32文件夹下。
引用AForge.video.ffmpeg,打开时会报错:找不到指定的模块,需要把发行包第三方文件externals\ffmpeg\bin里的dll文件拷到windows的system32文件夹下. ...
- As input tri-stated
前些日子正好看到了riple兄的<一波三折--危险的"未分配"引脚>一文,颇受启发.正好最近也遇上了类似的问题,也可谓一波三折,还好最后摆平了,要不煮熟的鸭子可就要飞了 ...
- android 给layout布局添加点击事件
<方法一> 1,在代码中加入如下红色代码,不然会被包含在其中的控件把焦点抢占,此时子控件无需设置clickable和focuseable <RelativeLayout ...
- NIO和IO(转)
java NIO由以下几个核心部分组成: Channels(通道) Buffers(缓冲区) Selectors(选择器) 其他 Channel和Buffer: 所有的IO再NIO中都从一个Chann ...
- python远程批量执行命令
#!/usr/bin/env python#-*- coding:utf-8 -*- from multiprocessing import Process,Poolimport time,param ...
- dao代码模板
提供数据源以及回收资源的工具类DbUtils: public class DbUtils { private static ComboPooledDataSource dataSource = new ...
- jQuery(3)——DOM操作
---恢复内容开始--- jQuery中的DOM操作 [DOM操作分类] DOM操作分为DOM Core(核心).HTML-DOM和CSS-DOM三个方面. DOM Core:任何一种支持DOM的 ...
- 浅谈angularJS指令的属性
restrict – 这个属性用来指定指令在HTML中如何使用(指令的四种表示方式).我们使用 ‘AE’,这个指令可以被当作新的HTML元素或者属性来使用.如果要允许指令被当作class来使用,我们将 ...