static关键字的使用

目录

文章目录

前言

一、static范围

二、静态属性和方法、单例模式、

静态块

总结


提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、static范围

使用范围:java static关键字可以用在变量、方法、代码块和嵌套类伤。

作用范围:static关键字属于类,而不是类的实例。

静态(static)修饰如下:

  1. 变量:称为类变量、静态变量
  2. 方法:称为类方法、静态方法
  3. 代码块:称为静态代码块
  4. 嵌套类:称为静态内部类

二、静态属性和方法、单例模式、静态块

  1. 静态变量可以被类的所有实例共享,因此静态变量可以作为实例之间的共享数据,增加实例之间的交互性。
  2. 如果类的所有实例都包含一个相同的常量属性,则可以把这个属性定义为静态常量类型,从而节省内存空间。例如,在类中定义一个静态常量 PI。
  3. static的另一个作用,就是修饰成员方法。相比于修饰成员属性,修饰成员方法对于数据的存储上面并没有多大的变化,因为我们从上面可以看出,方法本来就是存放在类的定义当中的。

  4. static修饰成员方法最大的作用,就是可以使用”类名.方法名”的方式操作方法,避免了先要new出对象的繁琐和资源消耗,我们可能会经常在帮助类中看到它的使用。

  5. 单例模式

    static一个很重要的用途就是实现单例设计模式。

    单例设计模式的特点是该类只能有一个实例,为了实现这一功能,必须隐藏类的构造函数,即把构造函数声明为private,并提供一个创建对象的方法,由于构造对象被声明为private,外界无法直接创建这个类型的对象,只能通过该类提供的方法来获取类的对象,要达到这样的目的只能把创建对象的方法声明为static,程序实例如下:
     

class Singleton{
    private static Singleton instance = null;
    private Singleton(){}
    public static getInstance(){
        if(instance == null){
            instance = new Singleton();
        }
        return instance;
    }
}   

classs Singleton1{
        private static Singleton instance = new Singleton();
        private Singleton(){
}
        public static Singleton getInstance(){
                return instance;
        }
}
6.
static关键字还有一个比较关键的作用就是 用来形成静态代码块以优化程序性能。static块可以置于类中的任何地方,类中可以有多个static块。在类初次被加载的时候,会按照static块的顺序来执行每个static块,并且只会执行一次。

为什么说static块可以用来优化程序性能,是因为它的特性:只会在类加载的时候执行一次。

总结

这就是static关键字的主要几个使用

你可能感兴趣的:(人工智能,java)