静态对象与非静态对象
2015-12-12 08:43
183 查看
Java静态对象和非静态对象有什么区别??
静态对象 非静态对象
是类共同拥有的. 是类独立拥有的,
内存空间上是固定的 空间在各个附属类里面分配
先分配静态对象的空间 继而再对非静态对象分配空间,也就是初始化顺序是先静态再非静态.
java静态对象和静态属性及静态方法又有什么区别呢?
这三者都和一般的对象属性和方法相似,可以将静态对象看成的静态属性.只不过楼主要注意的是在非静态方法里是不可以使用静态属性的.静态方法里也无法使用非静态属性(是属性不是参数.参数一般是指在方法里临时新建的数值或对象,属性是类声明部分声明的信息).
为什么先声明一个静态对象 static Lefthand left;还要在主函数中再实例化该对象呢left=new Lefthand();?
因为任何对象在使用之前都要进行初始化,new就是进行对象的分配空间后进行初始化.
java静态对象到底有什么好处??
我个人的理解就是静态对象可以让相同类型的类之间共享共同的属性,这个共享是同步的,而且不用new,节省了空间
1、静态对象的数据在全局是唯一的,一改都改。如果你想要处理的东西是整个程序中唯一的,弄成静态是个好方法。
2、非静态的东西你修改以后只是修改了他自己的数据,但是不会影响其他同类对象的数据。
3、静态对象和非静态对象都是对象,是对象都是要实例化的。不同之处就是2者的数据表现和存储方式不一样。
4、静态的好处:
引用方便。对于公用类型的变量,直接用 类名.静态方法名 或者 类名.静态变量名就可引用并且直接可以修改其属性值,不用getter和setter方法。
保持数据的唯一性。此数据全局都是唯一的,修改他的任何一处地方,在程序所有使用到的地方都将会体现到这些数据的修改。
有效减少多余的浪费。
静态对象 非静态对象
是类共同拥有的. 是类独立拥有的,
内存空间上是固定的 空间在各个附属类里面分配
先分配静态对象的空间 继而再对非静态对象分配空间,也就是初始化顺序是先静态再非静态.
java静态对象和静态属性及静态方法又有什么区别呢?
这三者都和一般的对象属性和方法相似,可以将静态对象看成的静态属性.只不过楼主要注意的是在非静态方法里是不可以使用静态属性的.静态方法里也无法使用非静态属性(是属性不是参数.参数一般是指在方法里临时新建的数值或对象,属性是类声明部分声明的信息).
为什么先声明一个静态对象 static Lefthand left;还要在主函数中再实例化该对象呢left=new Lefthand();?
因为任何对象在使用之前都要进行初始化,new就是进行对象的分配空间后进行初始化.
java静态对象到底有什么好处??
我个人的理解就是静态对象可以让相同类型的类之间共享共同的属性,这个共享是同步的,而且不用new,节省了空间
1、静态对象的数据在全局是唯一的,一改都改。如果你想要处理的东西是整个程序中唯一的,弄成静态是个好方法。
2、非静态的东西你修改以后只是修改了他自己的数据,但是不会影响其他同类对象的数据。
3、静态对象和非静态对象都是对象,是对象都是要实例化的。不同之处就是2者的数据表现和存储方式不一样。
4、静态的好处:
引用方便。对于公用类型的变量,直接用 类名.静态方法名 或者 类名.静态变量名就可引用并且直接可以修改其属性值,不用getter和setter方法。
保持数据的唯一性。此数据全局都是唯一的,修改他的任何一处地方,在程序所有使用到的地方都将会体现到这些数据的修改。
有效减少多余的浪费。
相关文章推荐
- FFmpeg音视频同步的问题
- Android短信发送流程之长短信发送(原)
- 潜水 java类加载器ClassLoader
- ffmpeg 如何音视频同步
- ffmpeg转码MPEG2-TS的音视频同步机制分析
- 如何查看Java库的源码
- Mac下卸载 Idea15
- 静态方法
- Linux运维 第五阶段(七)RHCS
- 数据结构C++实现——堆和优先权队列
- 排序算法(一):快速排序
- python小程序1
- 谈论高并发(七)几个自旋锁的实现(二)
- HDU 1546 Idiomatic Phrases Game 基础最短路spfa
- android的ViewPager和Animation有些使用(二)
- DelphiXE Android的所有权限按照分类总结说明
- node.js express开发web问题
- Mac配置PHP遇到的问题记录
- 【JQuery实例】--标签页效果
- Android短信发送流程之普通短信发送(原)