0
点赞
收藏
分享

微信扫一扫

Static修饰成员方法的基本用法

修炼之士 2022-04-20 阅读 116
java

一、 图例
在这里插入图片描述
二、 成员方法的分类
1、静态成员方法(有static修饰、属于类)、建议用类名访问、也可以用对象访问。
2、实例成员方法(无static修饰、属于对象)、只能用对象触发访问。
三、 使用场景
1、 表示对象自己的行为的、且方法中需要访问实例成员的、则该方法必须申明成实例方法。
2、 如果该方法是以执行一个通用功能为目的、或者需要方便访问、则可以申明成静态方法。
四、 成员方法的分类和访问分别是什么样的?
1、 静态成员方法(有static修饰、属于类和对象共享)访问格式
类名.静态成员方法
对象.静态成员方法(不推荐)
2、 实例成员方法(无static修饰、属于对象)的访问格式
对象.实例成员方法
五、 每种成员方法的使用场景是什么样的?
1、 表示对象自己的行为的、且方法中需要访问实例成员的、则该方法必须申明成实例方法。
2、 如果该方法是以执行一个通用功能为目的、或者需要方便访问、则可以申明成静态方法
六、 Static修饰成员方法的内存原理
在这里插入图片描述
七、 Static实际应用案例:设计工具类
在这里插入图片描述
八、 工具类
1、对于一些应用程序中多次需要用到的功能、可以将这些功能封装成静态方法、放在一个类中、这个类就是工具类
九、 工具类的作用
1、一是方便调用、二是提高代码复用
十、 工具类原理和延伸
1、 一次编写、处处可用。
2、 建议将工具类的构造私有、不让工具类对外产生对象
十一、 为什么工具类中的方法不用实例方法做?
1、实例方法需要创建对象调用、此时用对象只是为了调用方法、这样只会浪费内存
十二、 工具类是什么?有什么好处?
1、内部都是一些静态方法、每个方法完成一个功能
2、一次编写、处处可用、提高代码的重用性
十三、 工具类有什么要求?
1、 建议工具类的构造器私有化处理
2、工具类不需要创建对象
十四、 定义数组工具类
在这里插入图片描述
十五、 Static的注意事项总结
1、 静态方法只能访问静态的成员、不可以直接访问实例成员
2、 实例方法可以访问静态的成员、也可以访问实例成员
3、静态方法中是不可以出现this关键字的
十六、 Static应用知识代码块
1、 代码块是类的5大成分之一(成员变量、构造器、方法、代码块、内部类)、定义在类中的方法
2、在java类下、使用{}括起来的代码块被称为代码块
十七、 静态代码块
1、 格式:static{}
2、 特点:需要通过static关键字修饰、随着类的加载而加载、并且自动触发、只执行一次
3、 使用场景:在类加载的时候做一些静态数据初始化的操作、以便后续使用
十八、 构造代码块
1、 格式:{}
2、特点:每次创建对象、调用构造器执行时、都会执行该代码块中的代码、并且在构造器执行前行
3、使用场景:初始化实例资源
十九、 静态代码块的作用是什么?
1、如果要啊在启动系统时对数据进行初始化
2、建议使用静态代码块完成数据的初始化操作、代码优雅
二十、 什么是设计模式?
1、 设计模式是一套被前人反复使用、多数人知晓、经过分类编目的代码设计经验的总结、后来者可以直接拿来解决问题
2、 设计模式是软设中的常见解决方案、好的设计模式可以进一步的提高代码的重用性
二十一、 单例设计模式
1、 可以保证系统中、应用该模式的这个类永远只有一个实例、即一个类永远只能创建一个对象
二十二、 单例的场景和作用
1、例如任务管理器对象我们只需要一个就可以解决问题了、这样可以节省空间
二十三、 饿汉单例设计模式
1、 在用类获取对象的时候、对象已经提前为你创建好了
2、 设计步骤
1、 定义一个类、把构造器私有
2、 定义一个静态变量存储一个对象
二十四、 懒汉单例模式
1、 在真正需要该对象的时候、才去创建一个对象(延迟加载对象)
2、 设计步骤
1、定义一个类、把构造器私有
2、定义一个静态变量存储一个对象
3、提供一个返回单例对象的方法
二十五、 Static修饰成员变量的内存原理图
在这里插入图片描述
二十六、 Static关键字的作用
1、 static是静态的意思、可以修饰成员变量、表示该成员变量只在内存中只存储一份、可以被共享访问、修改
在这里插入图片描述
二十七、 成员变量可以分成两类
1、 静态成员变量(有static修饰、属于类、内存中加载一次):常表示如:在线人数信息、等需要被共享的信息、可以被共享访问
在这里插入图片描述
2、 实例成员变量(无static修饰、存在于每个对象中):常表示姓名name、年龄sge、等属于每个对象信息
在这里插入图片描述
二十八、 成员变量的分类和访问分别是什么样的?
1、 静态成员变量(有static修饰、属于类、加载一次、可以被共享访问)、访问格式
在这里插入图片描述
2、 实例成员变量(无Static修饰、属于对象)、访问格式
在这里插入图片描述
二十九、 两种成员变量各自在什么情况下定义?
1、静态成员变量:表示在线人数等需要被共享的信息
2、实例成员变量:属于每个对象、且每个对象信息不同时(name、age、、、、等)

举报

相关推荐

0 条评论