![616e80a2c939705f93bd5ccfdc2906db.png](https://i-blog.csdnimg.cn/blog_migrate/6ab1c06a21cd720c5776430ca15a2646.jpeg)
2020 年 7 月 16 日_java
java 数组 Array 类
- java.util.Arrays 类包含一些实用的方法用于常见的数组操作,比如排序和查找
- 对字符串或数值进行排序
- .sort
- .parallelSort
- 二分查找法
- .binarySearch
- 判断相等
- .equals
- 填充数组
- .fill
命令行参数
- 程序运算时,可以从命令行给 main 方法传递字符串参数
- 被""包裹的算一个字符串,比如"a msg"
- 数字实际上是以字符串形式传递的,比如 24 实际上是"24"
- 在调用 main 方法时,java 解释器
- 如果运行没有传递字符串,args 数组是长度为 0 的空数组
- 所以,args 不是 null
- 而是,args.length 是 0
- 这个才能判断命令行有没有给程序执行传递参数
统一建模语言(UML 类图)
无法显示请在 VScode 下载 Markdown Preview Enhanced 插件
个人觉得这个插件非常好用,基本上所有可视化的图全能画出来
UML 类图
classDiagram
class Circle{
radius:double
Circle()
Circle(newRadius: double)
getArea(): double
getPerime(): double
setRadius(newRadius: double): viod
}
定义类和创建对象
- 可以将多个类放在同一个文件中,但是忘记只能有一个类是公共(public)类
- 公共类必须与文件同名
- 编译后源代码每一个类编译成一个.class 文件
UML 图对于关键词的描述
- "+"前缀表示公共(public)修饰符
- "_"下划线表示静态(static)修饰符
- "-"前缀表示私有(private)修饰符号
构造方法
- 构造方法必须具备和所在类相同的名字,且为 public
- 构造方法没有返回值类型,甚至连 void 都没有
- 构造方法在创建一个对象使用 new 操作符时调用
- 构造方法和其他方法一样,也支持重载
静态方法
- 用关键字 static 定义的方法为静态方法
- 静态方法可以在不实例化对象的情况下直接使用
匿名对象
- 没有赋予给引用变量的对象一般称呼为匿名对象
- 他确实没有名字
java 内存管理小知识
- 如果你认为不再需要某个对象时
- 可以显式的给该对象的引用变量赋 null 值
- 如果对象没有被任何引用变量所引用
- JVM 会通过垃圾回收释放他们
静态变量,常量,静态方法
静态变量
- 实例变量是绑定到类的某个特定实例的
- 不能被同一个类的不同对象所共享
- 储存在不同的内存位置
- 为了实现所有实例共享数据,就要使用静态变量(static variable)
- 举例
- static int numberOfObjects;
常量
- 在静态变量上加上 final
- 举例
- final static double PI = 3.14
静态方法
- 静态方法可以在对象没有实例化去情况下直接使用
可见性修饰符
- public
- 被任何类访问,包括包(package)内和包外
- 无可见性标识符
- 包内可以访问,包外不可以
- private
- 只能被类(class)自己访问
数据域封装
- 使用 private 修饰符将数据声明为私有
- 这被称为数据域封装
- 为了能访问私有数据域
- 可以构造各种方法完成操作
- 访问器(accessor),get 方法
- public returnType getPropertyName()
- 修改器(mutator),set 方法
- public void setPropertyName(dataType propertyValue)