Java-构造函数(盲目分析)
Posted 薛定谔的猫。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java-构造函数(盲目分析)相关的知识,希望对你有一定的参考价值。
构造方法:
构造方法是一种特殊的方法,没有构造方法不能创建一个新的对象。实际上,创建对象不仅要调用当前对象实际类型的构造方法,还要调用父类的构造方法,直到Object类。构造方法不必显示调用,当时用new关键字的时候,相应的构造方法会自动的调用。
构造方法的规则;
1、构造方法能使用任何的访问修饰符。包括private
2、构造方法必须与类名同名(这是规范,对于规范来说,只有构造函数首字母大写)
3、构造方法不能有返回值(有返回值的都不是构造函数)
4、如果不在类中创建自己的构造方法,编译器会自动生成默认不带参数的构造方法(Java反编译工具可以看到)
5、如果只创建带参数的构造方法,那么编译器不会自动生成无参的构造方法
6、在每个构造方法中,如果使用了重载构造方法this()方法,或者父类的构造方法super()方法,那么this和super必须放在第一行,而且 两个方法只能选一个,他们之间没有顺序问题。
7、除了编译器自动生成的构造方法,而且没有显式调用super()方法,编译器会自动的插入一个super()无参调用
8、抽象类有构造方法
分析完了。
以上是关于Java-构造函数(盲目分析)的主要内容,如果未能解决你的问题,请参考以下文章
Java - SonarQube,关于“实用程序类不应有公共构造函数”(squid:S1118)的问题
Android 逆向整体加固脱壳 ( DexClassLoader 加载 dex 流程分析 | DexPathList 构造函数分析 | makeDexElements 函数分析 )