Java

xiaoxiao2021-02-28  111

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; } } 区别 : 饿汉式类加载的时候就创建对象, 懒汉式,类调用的时候没有创建对象再创建对象:延迟加载:: 补充在实际开发中我们建议使用饿汉式,懒汉式在多线程调用时,存在问题。如何解决:使用同步代码块

 

转载请注明原文地址: https://www.6miu.com/read-23307.html

最新回复(0)