Java_static 关键字, 单例设计模式
2017-05-05 11:45
253 查看
static 静态
用于修饰类成员,包括成员变量,成员函数,静态代码块。用static修饰的成员不依赖于对象存在,类加载时加载存在,体现为:可以直接用
类名.属性名 访问static修饰的属性(成员变量),直接用 类名.方法名 访问static修饰的方法(成员函数)重点是可以不需要创建访问类的属性和方法。
1.static用于修饰属性 2.static用于修饰方法 特点:可以直接访问,不依赖对象存在
3.修饰代码块 : 称为静态代码块 ,特点:在类加载时加载,即创建对象之前执行。静态代码块在同一个程 序中只会执行一次。 而动态代码块每创建一个对象执行一次,相当于构造函数,又叫构造代码块
4. jdk1.8以后可以在接口中,用static或者 default修饰的方法可以有方法体
主要运用 ——工具类:所有属性和方法都用static修的类,直接通过类名访问其属性和方法。
单例设计模式 :
1) 懒汉式: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;
}
}
区别 : 饿汉式类加载的时候就创建对象, 懒汉式,类调用的时候没有创建对象再创建对象:延迟加载::
补充在实际开发中我们建议使用饿汉式,懒汉式在多线程调用时,存在问题。如何解决:使用同步代码块
相关文章推荐
- 黑马程序员——Java基础:static关键字、单例设计模式
- 黑马程序员 Java基础 面向对象:static关键字 main函数 单例设计模式
- 关于java中static关键字在单态设计模式的应用学习和总结
- java基础之equal()方法、static关键字、单例设计模式
- Java笔记2 面向对象<2>static关键字、main函数、静态运用、单例设计模式
- Java基础(面向对象二——static关键字、主函数定义和单例设计模式)
- Java知识碎片整理(5)——static关键字与单例设计模式
- JAVA基础知识点(三)--this,static,main函数,单例设计模式
- 黑马程序员_Java基础_面向对象(Static的使用、对象初始化和调用成员过程、单例设计模式)
- Java自学笔记(第六天)-static-类变量-对象变量-javadoc文档-static代码块-单例设计模式
- 方法的重载与重写的关系(区别);static关键字;单例设计模式;继承;
- 1、Java面向对象笔记(匿名对象)(static 静态修饰符)(单例设计模式)
- 课时42|封装--static关键字、设计模式之单例模式
- java、静态代码块、static和单列设计模式
- Java 高并发第二阶段实战---高并发设计模式,内存模型,CPU一致性协议,volatile关键字剖析
- java学习之路 之 高级类特性2-关键字static、类变量、类方法、单例模式
- Java基础06:Static;单例设计模式;对象初始化;构造函数;
- 黑马程序员——static关键字 与简单的单态设计模式
- 【06】面对对象2_static关键字,单例设计模式
- 黑马程序员——学习日志5面向对象(static关键字,单例设计模式,抽象类,接口)