主函数-帮助文档-单态设计模式

来源:互联网 发布:贝思软件怎么样 编辑:程序博客网 时间:2024/06/05 01:12
主函数:是一个特殊的函数。作为程序的入口,可以被jvm调用。

主函数的定义:
public:代表着该函数访问权限是最大的。
static:代表主函数随着类的加载就已经存在了。
void:主函数没有具体的返回值。
main:不是关键字,但是是一个特殊的单词,可以被jvm识别。
(String[] args):函数的参数,参数类型是数组,该数组中的元素是字符串。字符串类型的数组。
主函数是固定格式的:jvm识别。
jvm在调用主函数时,传入的是new String[0];
当功能内部没有访问到非静态数据/对象的特有数据,该功能可以定义成静态的。

为了不让类建立新对象,可以私有化空构造函数实现。


帮助文档的制作
通过文档注释来完成

javadoc -d 目录 -author -version XXX.java

默认构造函数的权限随着类的变化而变化的。API文档。


静态代码块:随着类的加载而执行,只执行一次,并优先于函数执行。用于给类进行初始化。
static{静态代码块中的执行语句}
{ }构造代码块给对象初始化
构造函数给对应对象初始化。

面向对象对象的初始化过程:默认初始化->显示初始化->构造代码块->构造函数初始化
Person p = new Persom("zhang",20);
1、因为new用到person.class.所以会先找到Person.class文件并加载到内存中。
2、执行该类中的static代码块,如果有的话,给Person.class类进行初始化。
3、在堆内存中开辟空间,分配内存地址
4、在堆内存中建立对象的特有属性,并惊醒默认初始化
5、对属性进行显示初始化
6、对对象进行构造代码块初始化
7、对对象进行对应的构造函数初始化
8、将内存地址给栈内存中的p变量。


设计模式GOF 一共23种模式被总结。
单例设计模式:所有用户共享一个单例对象。

饿汉式设计。Single一进内存就创建好了对象。
class Single
{
private Single(){}
private static Single s = new Single();
public static Single getInstance()
{
return s;
}
}
class SingleDemo
{
public static void main(String[] args)
{
Single ss = Single.getInstance();
}
}

懒汉式设计Single进内存还没有对象,只有调用方法才建立对象。

class Single
{
   private static Single s = null;

    privateSingle(){}
    privatestatic Single s = new Single();
public static synchronized SinglegetInstance()
{

    if(s ==null)

    s= new Single();
    returns;
}
}

建立单例建议用饿汉式。