不知道怎么来回来了,
哈哈
其实,一个类,在建立的时候是通过构造函数(或者说构造方法) 来进行初始化的。
特别是前期接触代码的时候很少能遇见构造函数。或者说没有函数。
其实不是没有函数,是你没有定义构造函数,这个时候,是默认有一个空的构造函数
而这个空的构造函数里也有一个默认的指针,指向父类的构造函数中。
类就是这样来进行初始化的。
给你小个简单的小列子你就知道了:
- class Person
- {
- Person(){
- System.out.println("出生时哭叫");
- }
- }
- class YinEr extends Person
- {
- }
- class add
- {
- public static void main(String[] args)
- {
- YinEr y=new YinEr();
- }
- }
复制代码
我们定义了一个人的类,然后什么也不写,在main方法中实例化一个对象,运行,编译通过,运行空白
然后我们在人类中写上一句输出语句,然后在运行, 发现出现了这句话。
然后我们在写一个小孩类 【不知道你视频学到继承没有】
小孩类里什么也不写, 直接在main方法中实例化,运行,同样会执行父类中的输出语句
说明,一个类的建立如果没有定义构造函数,会默认添加。而构造函数就是初始化作用的。
在定义类的时候,进行事物分析时,该事物存在具备一些特性或者行为,那么就将这些内容定义在构造函数中。
所以这里,其实应该把哭这个特性写到小孩类里面。
在比如实际用到某些事物,我这里就举例了,比如要用到茶杯这个类,
- class chaBei{
- String name;
- chaBei(String name){
- this.name=name;
- }
- }
复制代码
假设他们的共性就是 都有名字,就可以在构造函数中进行初始化。
构造函数的执行优先级高于普通代码
对象一建立首先执行的是静态方法和静态修饰的变量,而后执行构造函数,
构造函数匹配其内容进行初始化,只执行一次。 |