java语法整理
来源:互联网 发布:java漏洞检测工具 编辑:程序博客网 时间:2024/06/04 20:59
重载规则:每个重载的方法都必须有一个独一无二的参数类型列表
- 参数的顺序不同可以区分。
- 基本数据类型的重载 :有则调用,如果实际传入小则提升,去调用比实际传入大的。char直接提升为int。如果实际传入大,要进行转型,强制转化为小的,不然编译器会报错。
- 大小标准:char byte short int long float double
- 不能用返回参数作为区分的依据。原因:重载的应用场景在方法调用的时候。用相同的方法名,以传入的参数列表不同来区分调用不同的方法,有时候在调用时我们并不关心方法的返回,而只是关心方法的运行带来的一些效果。
默认构造器:没有构造器编译器会默认创建一个,因为要确保每一个对象在创建之前都被初始化。如果定义了其他构造器,新建对象时如果调用默认构造器就会报错。
this关键字:类是一个模板,每个对象都有自己的属性和方法,可以向对象发送消息。每个对象有自己的属性和方法是合理的,但是对一个对象来说,属性是特有的,但是方法却可以通用,所以没有给每个对象都分配方法的空间,这样就不会冗余,在对象调用方法时,传入对象的引用。也就是每个非静态方法都会持有调用该方法的对象的引用。
- this关键字加参数可以调用构造器,但是调用构造器只能放在方法内部第一行。
- 只能在构造器内部调用构造器,不能在方法中调用构造器。
- static 方法不持有对象的引用,也就是方法内不存在this。它是类方法。
垃圾回收 finalize()
- 对象可能不被垃圾回收。
- 垃圾回收不等于“析够”。
- 垃圾回收只与内存有关。
- System.gc()用于强制执行终结动作。
成员初始化
- java保证所有变量在使用前都得到恰当的初始化。
方法的局部变量用编译时错误的形式保证。
void f(){
int i;
i++; //编译器报错
}成员变量编译器会自动初始化,引用会被初始化为NULL。
- 无论创建多少个对象,静态数据都只会占用一存储区域。
- static 关键字不能作用于局部变量,只能作用于域。
- 如果静态域没有初始化,也会获得基本类型的标准初值。引用赋值为null。
指定初始化:在定义的时候直接初始化。
构造器初始化:无法阻止自动初始化的进行,它将在构造器被调用之前发生。
初始化顺序(先静态对象,而后非静态对象)
- java解释器查找类路径,定位类的class文件。
- 载入类,创建class对象,静态初始化的所有动作执行(在类加载时只执行一次)
- 当new 一个新类的时候,首先在堆上为对象分配足够的空间。
- 将空间清零,也就是为基本类型赋初值。
- 执行所有出现于字段定义处的初始化。
- 执行构造器。
文字解释加载顺序:先找到类文件—>加载进来—>(再去寻找类的静态域—>如果有—>在堆上分配空间—>将空间清零—>再去执行静态域定义处的初始化—>所有定义处的初始化执行完—>再执行静态代码块的初始化)—>然后开始创建对象—>为对象分配内存空间—>空间清零—>执行字段定义处的初始化—>执行代码块的初始化—>执行构造器。
代码块的作用:因为代码块是在构造器之前调用的,每新建一个对象就要执行一次,每次可能新建不同的对象,要执行不同的构造器,但是构造器可能有共同的方法,我们可以抽取出来放在代码块里,就不需要在每一个构造器里写了。
0 0
- java语法整理
- Java基本语法整理(一)
- 【二】Java基础语法整理
- Java笔记整理-02.Java基础语法
- 飞速整理:Java基本语法1
- 飞速整理:Java基本语法2
- 语法整理
- Java语法知识 --整理自《thingking in Java》
- pl/sql语法总结,java陌生语法总结-有道笔记整理
- google入侵语法整理
- 【语法】const 用法整理
- MSSQL语法整理
- Velocity语法-收集整理
- [语法整理] 定语从句
- 初级日语语法整理
- 存储过程语法整理
- SQL语法整理
- SQL 语法整理
- Javac 找不到文件
- 高等数学-对函数极限的理解(二)
- Vulkan Programming Guide 第一章(2)
- Spring @AspectJ 实现AOP 入门例子
- 蚂蚁分类信息系统 5.8 增加七牛云存储插件
- java语法整理
- HEXO deployer 问题
- 高等数学-对无穷小无穷大的理解
- kNN与kMeans聚类算法的区别
- 欢迎使用CSDN-markdown编辑器
- Exchanger的使用
- 随性
- 数据结构-高级排序
- 【NDN安全】Poseidon: Mitigating Interest Flooding DDoS Attacks in Named Data Networking 学习笔记