JAVA基础第六天学习日记_static关键字、文档、静态代码块、单例开发模式

时间:2021-11-27 16:51:00
---------------------- android培训 java培训 、期待与您交流! ----------------------

JAVA基础第六天学习日记_static关键字、文档、静态代码块、单例开发模式

静态变量,方法函数存放在方法区。

静态变量是随着类的加载而加载的,同时是随着类的消失而消失的。所以静态成员的生命周期最长。

静态变量的利弊:

  优点:对对象的共享数据进行单独空间的存储,节省空间。没有必要每个对象中都存储一份。可以直接被类名调用。

  弊端:生命周期过长。访问出现局限性(静态虽好,只能访问静态。)

何时使用静态:从两方面说,何时使用静态变量,何时使用静态方法。

  当对象中出现共享数据时,该数据被静态所修饰。特有数据定义成非静态存在于堆内存中。

  当功能内部没有访问到非静态数据时,那么该功能就定义成静态的。

静态的使用:每一个程序中都有的共性功能,可以将这些功能进行抽取,独立封装,以便复用。(工具类的产生)

在工具类使用时,当本类中没有对象的定义时,虚拟机会在指定目录寻找同名的class文件,如果没有的话在当前目录中寻找。没有class文件,但是有java文件时,虚拟机会首先编译java文件。为了保证虚拟机先在当前目录中寻找class文件,然后到指定目录需找,设置set classpath=.;加指定目录路径。

工具类还可以建立对象,为了更为严谨,强制让该类不能建立对象。可以通过将构造函数私有化。

----------------------------------------------------------------------------------------------------------------------

程序说明书的生成是由虚拟机识别

/**

类的功能说明

@author 作者

@version 版本

*/

/**

方法的功能说明

@param 参数说明

@return 返回值说明

*/

由命令javadoc -d 存储文档的路径 -author -version 源文件名称  生成到存储文档的路径文件夹,如没有这个文件夹,则自动新建。

注意:帮助文档说明的类必须是由public关键字修饰的

--------------------------------------------------------------------------------------------------------------------------

主函数,特殊的静态函数,作为程序的入口,被jvm调用。

其中,各个单词的含义:

public:代表着函数的访问权限是最大的。

static:代表这函数随着类的加载就已经存在了。

void:主函数没有具体的返回值。

main:不是关键字,但是是一个特殊的单词,可已被jvm识别。

(String[] args):函数的参数,参数类型是一个数组,该数组中的元素是字符串。字符串类型的数组。args作为主函数中唯一可以改变的单词。其作为一个数组名。只要是合法的,可以随意定义。在执行class文件时,通过java 。。加字符串数组的形式向主函数传递参数。

静态代码块

格式:

Static

{

        静态代码块中的执行语句

}

随着类的加载而执行,只执行一次,并优先与主函数。用于给类进行初始化的。

各个块的执行顺序:静态代码块、构造代码块、构造函数。

JAVA基础第六天学习日记_static关键字、文档、静态代码块、单例开发模式

单例模式开发

JAVA基础第六天学习日记_static关键字、文档、静态代码块、单例开发模式

单例模式开发的两种形式,饿汉式和懒汉式。

饿汉式:类一进内存,首先建立好对象。(开发时一般选择)

class single
{
private static single s=new single();
private single(){}
public static single getinstance()
{
return s;
}
}

懒汉式:对象的延时加载。方法被调用时,才初始化。

class single
{
private static single s=null;
private single () {}
public static single getinstance()
{
if(s!=null)
s=new single();
Return s;
}
}


 

---------------------- android培训 java培训 、期待与您交流! ----------------------