Java_static 关键字, 单例设计模式
来源:互联网 发布:远程suse安装软件 编辑:程序博客网 时间:2024/05/16 12:27
static 静态
用于修饰类成员,包括成员变量,成员函数,静态代码块。用static修饰的成员不依赖于对象存在,类加载时加载存在,体现为:可以直接用 类名.属性名 访问static修饰的属性(成员变量),直接用 类名.方法名 访问static修饰的方法(成员函数)重点是可以不需要创建访问类的属性和方法。
1.static用于修饰属性 2.static用于修饰方法 特点:可以直接访问,不依赖对象存在
3.修饰代码块 : 称为静态代码块 ,特点:在类加载时加载,即创建对象之前执行。静态代码块在同一个程 序中只会执行一次。 而动态代码块每创建一个对象执行一次,相当于构造函数,又叫构造代码块
4. jdk1.8以后可以在接口中,用static或者 default修饰的方法可以有方法体
主要运用 ——工具类:所有属性和方法都用static修的类,直接通过类名访问其属性和方法。
单例设计模式 :
1) 懒汉式:
class LanHan {
class LanHan {
//静态本类对象做属性
private static LanHan lanHan;
//私有化构造函数
private LanHan(){}
//对外提供对外获取本类对象的静态方法
public static LanHan getLanHan(){
if(lanHan==null)
lanHan = new LanHan;
return lanHan;
}
}
2) 饿汉式:
class EHan{
private static EHan eHan= new EHan();
private EHan(){}
public static EHan getEHan(){
return eHan;
}
}
private static LanHan lanHan;
//私有化构造函数
private LanHan(){}
//对外提供对外获取本类对象的静态方法
public static LanHan getLanHan(){
if(lanHan==null)
lanHan = new LanHan;
return lanHan;
}
}
2) 饿汉式:
class EHan{
private static EHan eHan= new EHan();
private EHan(){}
public static EHan getEHan(){
return eHan;
}
}
区别 : 饿汉式类加载的时候就创建对象, 懒汉式,类调用的时候没有创建对象再创建对象:延迟加载::
补充在实际开发中我们建议使用饿汉式,懒汉式在多线程调用时,存在问题。如何解决:使用同步代码块
0 0
- Java_static 关键字, 单例设计模式
- java之单例设计模式,继承,final关键字总结
- 【06】面对对象2_static关键字,单例设计模式
- 黑马程序员-day06static关键字和静态,单例设计模式
- 黑马程序员—this关键字及单例设计模式
- 关键字static ,单例模式
- static关键字----->单例模式
- 课时42|封装--static关键字、设计模式之单例模式
- 菜鸟先飞之JAVA_static关键字
- 设计模式--单例
- 单例设计模式
- 设计模式----单例
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- 单例设计模式
- git还原到之前版本
- php heade中rCache-control函数参数的使用
- 《Android源码设计模式解析与实战》读书笔记(三)——建造者模式
- 选择屏幕上增加自定义按钮
- 按层打印二叉树
- Java_static 关键字, 单例设计模式
- [windows环境] 日常填坑
- Mysql权限控制
- Linux 下 NodeJS 获取 IP 等信息
- 最新 IntelliJ Idea 2017 激活方法
- scrollRectToVisible 无效的两个原因
- 生成JSON数据--fastjson(阿里)方法
- 禅
- svd 理解