static修饰成员方法、static修饰成员的特点总结、浅聊主方法-java se进阶 day01
1.工具类的介绍
工具类不是用于描述事物的类,而是帮我们完成事情的类(打工)
如图
当我们编写完这个类后,我们会发现一件事,这个类自己本身并没有意义,这个类完全是给用户进行调用方法的
既然是专门给用户调方法,那我们就应该写的更简便点,创建对象,再拿着对象名调用过于麻烦,因此我们在这些方法上都加入static,如图
之前说过,被static修饰后,会多一种调用方法,即使用类名调用,如图
这样就不再需要创建对象,可以直接拿着类名调用方法,更加方便
上图被static修饰后的方法可以直接使用类名进行调用,那么,我们就没有创建对象的必要了,创建对象就是为了调用方法,但现在方法都可以直接通过类名调用了
所以,当一个类中,所有的方法都被static修饰时,我们要私有化对象,这样既可以防止不必要的麻烦,还可以减少内存占用
2.static修饰成员方法
何时要用static修饰成员方法呢?---常用于制作工具类时使用
3.static修饰成员的总结
1.static方法中,只能访问静态成员(直接访问)
我们只需记住静态访问静态,拿主方法举例
原因很简单,之前也说过static修饰成员对象的内存图解,被static修饰的成员,随着类的加载而加载
所以,age2、show()、主方法,是在StaticTest这个类被创建时就已经在堆内存中创建,这时主方法当然可以成功调用,此时age1和time()都还没被创建出来,当然无法调用
.
解决方法有两种,第一种最简单,在前面加上static一起被创建,第二种就是创建出对象,然后拿着对象名调用即可
2.static中不能使用this关键字,很好理解,this关键字是当前对象的引用,对象都还没创建呢,怎么引用
4.浅聊主方法
static修饰成员方法、static修饰成员的特点总结、浅聊主方法-java se进阶 day01的更多相关文章
- 静态static关键字修饰成员方法和静态static的内存图
当 static 修饰成员方法时,该方法称为类方法 .静态方法在声明中有 static ,建议使用类名来调用,而不需要 创建类的对象.调用方式非常简单 ~类方法:使用 static关键字修饰的成员方法 ...
- 静态static关机子修饰成员方法-静态static的内存图
静态static关机子修饰成员方法 静态方法 当 static 修饰成员方法时,该方法称为类方法 .静态方法在声明中有 static ,建议使用类名来调用,而不需要 创建类的对象.调用方式非常简单. ...
- 类成员(static)和final修饰符
在Java类里只能包含成员变量.方法.构造器.初始化块.内部类(包括接口.枚举)5种成员,类成员是用static来修饰的,其属于整个类. 当使用实例来访问类成员时,实际上依然是委托给该类来访问类成员, ...
- java中的static(包括类前面修饰的static、方法前面修饰的static、成员变量前面修饰的static)
static是静态修饰符: 什么叫静态修饰符呢?大家都知道,在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的,而所谓静态就是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第6节 static静态_13_静态static关键字修饰成员方法
static关键字 用来修饰方法的情况 任何使用这个静态方法呢? 可以直接通过对象名称的方式进行调用. 更好的写法是通过类名称进行调用. 分别定义成员变量和静态变量 静态方法里面不能用this
- static(静态、修饰符)
static(静态.修饰符) static修饰成员变量时:static修饰成员变量时,那么该成员变量的数据就是一个共享的数据. 静态成员变量的访问方式: 方式一: 使用对象进行访问. 对象.属性名 方 ...
- JAVA中类以及成员变量和成员方法的修饰符的总结
一 类的修饰符 java中的文件结构由大到小为:一个工程,一个工程下可以有许多包,每个包中可以有许多类. 类的修饰符分为 访问权限修饰符 和 ...
- Javase部分回顾(static (静态修饰符),修饰方法,单利的设计模式, 封装)
static (静态修饰符) 1.修饰成员变量 静态变量的访问方式: 方式一 : 通过对象访问. 对象.变量名 ...
- 访问修饰符与可选修饰符static的使用
在Java中修饰符较多,在这里简单说一说几个访问修饰符的选择使用,和可选修饰符static的使用. 一.访问修饰符:这是Java里用来控制访问类及类的方法.变量的访问权限,从而达到只暴露接口,来隐藏内 ...
- 【Android开发经验】ViewHolder到底用什么修饰?static?final?static final?
其实一上来我就贴一张图就ok了,因为这几种完全一样,不管用什么修饰,ViewHolder都会初始化当前界面可见item的数量+1次,和convertView的实例化次数是一样的,因此,我么不管使用什么 ...
随机推荐
- 【转】史上最详细的 JDK 1.8 HashMap 源码解析
HashMap的源码应该是我看过最多变的JDK源码,没有之一,自己也写过一些帖子来记录自己的感悟,虽然其中涉及数据结构以及实现方式也都有所掌握,但是每次看都有不一样的收获,尤其是源码作者的编码思路以及 ...
- ABC 384(A~F)
期末周的第二把网瘾,vp了一把abc.这把打得还是比较舒服的,做出了A~E.但最后两道题还是出得太慢了(一道思路太慢,一道调试太慢).什么时候能够在赛时做出F题呢qwq... ABC 这场abc的AB ...
- 浅说 c++20 coroutine
浅说cppcoro 上一篇<浅说c/c++ coroutine>介绍了stackful协程,举了win32 Fiber跟tencent/libco为例. 本篇https://www.cnb ...
- 为Delphi配置多套环境
假设我们使用Delphi6开发了一个投资系统,在开发过程中我们使用了indy控件.到目前为止投资系统已经发了若干个版本,如投资系统1.0.投资系统1.2.投资系统1.5.投资系统2.0.投资系统2.3 ...
- 【译】融入人工智能的 eShop – 全面的智能应用示例
原文 | Jeremy Likness 翻译 | 郑子铭 人工智能 (AI) 是一种强大的工具,它可以增强您的应用程序,提供更好的个性化定制体验,满足客户的独特需求,同时提高内部运营的质量和效率.虽然 ...
- Protobuf生成文件报错
Mac下protobuf生成文件报错问题解决办法,windows下就不会这么麻烦了,如果linux下出现类似报错信息按照下面的解决逻辑依然适用. 1.由--go_out引发的报错 1.报错信息: us ...
- kubernets学习笔记二
Kubernetes部署"容器化应用" Kubernetes整体架构 何为"容器化应用"? 通俗点来说,就是你把一个程序放在docker里部署,这个docker ...
- 闲话 718:1x2 骨牌的矩形覆盖计数
注:以下的 \(i\) 不在下标时均代表虚数单位,\([n]=\{1,2,...,n\}\). 首先把格子当成点,连一个图出来:上下格子连向上的边,左右格子交替连向左/向右的边.这样求完美匹配方案数即 ...
- Atcoder ABC216G 01Sequence 题解 [ 蓝 ] [ 差分约束 ]
01Sequence:比较板的差分约束,但有一个很妙的转化. 朴素差分约束 设 \(x_i\) 表示第 \(i\) 位的前缀和. 我们要最小化 \(1\) 的个数,就要求最小解,就要求最长路.因为约束 ...
- WPF 创建自定义鼠标光标指针
WPF Cursor类中的两个构造函数: public Cursor(Stream cursorStream) public Cursor(string cursorFile) 以上的构造函数所使用的 ...