/*
构造函数的作用:给对应的对象进行初始化
构造函数的注意事项:
1.构造函数是没有返回值的
2.构造函数的名字必须跟类名一致
3.构造函数不是由我们手动调用的,而是在
创建对象时,由java虚拟机调用对应得构造函数
4.当我们没有显式的写上构造函数时,在编译时,
java编译器会为该类加上一个无参的构造函数
5.当我们显示的写上构造函数时,在编译时,
java编译器将不会为该类加上一个无参的构造函数
6.构造函数是可以重写的
疑问?为什么之前我们没写构造函数,java虚拟机有没有调用构造函数呢?
答:会调用构造函数,在编译时,java编译器会为该类加上一个
无参的构造函数,这个构造函数的权限修饰符跟类名的权限修饰符一样
javap(反边编译工具) java
p -c -l -p 字节文件的文件名
构造函数与普通的函数有啥区别?
返回值的区别
1.构造函数没有返回值
2.普通的函数有返回值,即使没有,也要写上void
命名的区别:
1.构造函数的名字,必须与类名一致
2.普通的函数只要符合标识符规范就好了
调用的不同:
1.构造函数时由java虚拟机自动调用的
2.普通函数是有对象调用的,一个对象可以多次调用普通函数
作用不同:
1.构造函数是用来初始化一个对象
2.普通函数是描述一类事物的公共行为
*/
class GouZao {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
class Car {
private String name;
private String age;
Car(String name,String age){//有参的构造函数
this.name=name;
this.age=age;
System.out.println("这是车的无参构造方法");
}
Car(){//无参的构造函数
System.out.println("这是车的无参构造方法");
}
public void run(){
System.out.println("车子跑");
}
} |
|