设计模式之方法被调用的方式
来源:互联网 发布:js 处理json对象 编辑:程序博客网 时间:2024/06/05 16:32
其实刚学习java对方法被调用来调用去的思想有些模糊,调用一多了,就有点迷糊了,所以看完视频后,今天准备对方法被调用的方式做一些解释,可能话语没有那么专业化,但是还是为了学习。希望各位大侠多多指点。(结合代码和图看)
class Single
{
private Single(){}
private static Single s = new Single();
public static Single getInstance()
{
return s;
}
}
class SheJiMoShi
{
public static void main(String[] args)
{
Single ss = Single.getInstance();
}
/**
方法被调用有两种方式:对象和类名;
在没有对象条件下,如果用类名调用,则方法必须为静态,静态方法再访问类中的成员;
类中的成员变量一般进行私有化(通过方法访问);
如果在类中只有1个对象,则只需要用get方法就可以了,不需要再去用set方法;
上面代码中:Single ss = Single.getInstance();这是静态方法调用,类名调用getInstance()静态方法,它返回的是一个类类型ss的引用
在上面代码中程序执行的顺序是先读取主函数中的代码:Single ss = Single.getInstance();,他们的含义是:
(1)先加载Single类,Single类一加载后,在方法区只中就有了Single类的方法空间(见图),然后有一个静态的S变量,还有一个getSingle方法,当调用了方法后,就返回了一个S,S有一个值就是 new Single(),把new Single()赋给了变量S,而这个new Single()它在堆中是一个内存地址值,它是一个对象,即它必须在对内存中(见图)
(2)在调用getInstance()方法的时候,它返回 了一个S,将这个S赋给了SS(将getInstance里面的值s赋给了SS)(见图)
注意:
对象全在堆里面。
对象一建立就必须分配内存空间。
方法区中的S只是指向对象,引用了这个对象。
*/
}
- 设计模式之方法被调用的方式
- JavaScript设计模式 --- 方法的链式调用
- JavaScript设计模式:方法的链式调用
- 设计方式之 模板方法(Template Method)模式
- 设计模式的学习之路--模板方法设计模式
- 思维方式之设计模式
- 设计模式之模板方式
- 【js设计模式笔记---方法的链式调用】
- 【js设计模式笔记---方法的链式调用】
- 设计模式之模板方式模式
- GOF23设计模式之工厂方法模式的实现
- 模式设计的秘密之模板方法模式
- 神奇的设计模式之工厂方法模式
- 设计模式之工厂方法模式的简单实现
- 设计模式的艺术之道--工厂方法模式
- 设计模式的艺术之道--模板方法模式
- 调用方法的另一种方式
- 调用方法的另一种方式
- 学习地址
- Makefile详解——从入门到精通
- 想做一个网站:让大家都能挣钱
- SQL Server 2008 User Account Create (For Frank's website)
- 12种不宜使用的Javascript语法
- 设计模式之方法被调用的方式
- usaco 1.3.4 Prime Cryptarithm
- request乱码问题
- C#调用WebService实现天气预报
- POJ 1269 Intersecting Lines
- Python:通过执行100万次打印来比较C和python的性能,以及用C和python结合来解决性能问题的方法
- Java与C#的中只读关键字区别分析
- Bresenham算法
- 阅读笔记-游戏开发中的人工智能-第2章-追逐和闪躲