| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Java进阶(三)——权限修饰符,代码块,常用API -> 正文阅读 |
|
[Java知识库]Java进阶(三)——权限修饰符,代码块,常用API |
目录 1、思维导图2、权限修饰符????????权限修饰符:作用于成员变量和成员方法 ? ? ? ? 修饰范围如下表:
? ? ? ? 其中private的访问权限是最小的,只能被本类中的成员访问,在之前的封装里面就已经用到了private,如果其他的类需要访问,则需要提供set个get方法 ? ? ? ? 空的权限修饰符比private访问范围大一点,就是可以在本包下的不同类中进行访问,即直接在访问的类中创建被访问类的对象即可 ? ? ? ? protected可以在不同包的子类中进行访问,上面空权限修饰符是需要创建对象调用,而不同包的子类则需要继承,再直接调用 ? ? ? ? public所有的地方都能访问 3、代码块? ? ? ? 代码块有三种,静态代码块,构造代码块,局部代码块,由于后面二者不常用,所以着重看第一种:静态代码块 ? ? ? ? 静态代码块:执行优先级高于非静态的初始化块,它会在类初始化的时候执行一次,执行完成便销毁,它仅能初始化类变量,即static修饰的数据成员。 ? ? ? ? 在类的运行内存图中,每个方法在执行前都会被加载进方法区,然后就不会动了,也就是说,静态代码块只能运行一次 ? ? ? ? 写法:
4、常用API? ? ? ? 常用API其实就是Java中已经定义好的类,我们需要学习它们的方法,由于目前博主只学了6个类,以后学完整会补充。 4.1 Object类? ? ? ? Object类是所有类的父类,所有类都直接或间接的继承了Object ? ? ? ? 如图,我只是在一个测试类中写了一个空的字符串s,然后写下s.? ?,却出现了很多方法,这些方法在我的测试类中都不存在的,那么说明String继承了某个类,而这些方法就是那个类里面的,这个类就是Object类? 4.1.1 equals()方法? ? ? ? Object类中的equals()方法可以说是没有意义的,打开Object类中的源码 ????????可以发现源码中用的==号,==号在之前也提到过,当它用于基本数值类型的比较时,是比较数值的,但是当用于引用类型的比较时,比较的却是地址值?,所以它是需要在子类中重写的,IDEA是一个很好用的软件,它不需要我们自己重写,直接按Alt + Insert,找到equals就会自动重写好,我也是第一次感受到了源码的魅力,只能说,任重而道远,源码让我见识到了什么叫优秀的代码
4.1.2 toString()方法????????toString()方法的作用是把对象转成一个字符串,但是打开源码会发现,Object类里面的方法是把对象转成一个 "包名.类名+@+地址值" ? ? ? ? ?所以也需要重写,重写的快捷键和equals方法的一样,不做过度赘述 4.2 Date类? ? ? ? 见名知意,是时间的类,但要注意,Date类的单位只有毫秒 ? ? ? ? 创建对象的方法有两种: ? ? ? ? 1、无参
? ? ? ? 此方式创建的时间是现在的时间,也就是电脑系统上的时间 ? ? ? ? 2、有参
????????此方法创建的时间是指,在标准基准时间的前提下,加上1000毫秒,也就是1秒,计算机的标准基准时间是指历元,即1970年1月1日00:00:00 GMT。。。由于中国的地理位置处在经八维度,所以在中国地区的标准基准时间为:1970年1月1日08:00:00 GMT 4.2.1 getTime()方法? ? ? ? 获得传入对象时间到标准基准时间的毫秒差,用long来接收变量
4.2.2 after,before方法? ? ? ? 判断该时间是否在括号里的时间之前(后)
4.3 DateFormat类
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 13:05:14- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |