java 构造方法(基础)
java构造方法(基础)
构造方法也叫构造器,是创建对象时执行的特殊方法,一般用于初始化新对象的属性。它是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是在调用构造方法。
格式
public 类名称 (参数类型 参数名称){
方法体
}
例如代码:
//一个无参构造的方法
public Student(){
System.out.println("无参构造执行");
}
那么一个有参构造的方法体
public Student(String name,int age){
System.out.println("有参构造执行");
this.name=name;//方便我们调用参数
this.age=age;
}
写构造方法时需要注意的事项:
1.构造方法的名称必须与前面的类的名称相同。大小写也要一样。
2.构造方法不需要返回值类型,所以不需要写void。
3.在构造方法体内不能返回具体的值。
4.当我们在一个类中不写构造方法时 ,编译器会默认给我们一个构造方法。且没有参数,方法体也没啥事干。
5.但如果我们要是写了一个以上(至少一个)的构造方法,编译器就不会再给我们构造方法。
6.我们写的构造方法也是可以重载的,(方法重载:方法名相同,参数列表不同)
可以点击上面链接查看方法基础。
构造方法的重载:
代码:
//一个无参构造的方法
public Student(){
System.out.println("无参构造执行");
}
//一个有参构造的方法
public Student(String name,int age){
System.out.println("有参构造执行");
this.name=name;
this.age=age;
}//方法名相同,参数列表不同
构造方法完整代码应用:
package Day01;
//首先我们写一个Student类
public class Student {
private String name;//两个成员变量
private int age;
//我们来获取这两个private类型的变量,getter/setter方法。因为他们是private类型
// 可以使用快捷键alt+insert 生成getter/setter方法,光标放在要生成方法的变量上。
public String getName() { //有参构造
return name;
}
public void setName(String name) { //无参构造
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//一个无参构造的方法
public Student(){
System.out.println("无参构造执行");
}
//一个有参构造的方法
public Student(String name,int age){
System.out.println("有参构造执行");
this.name=name;
this.age=age;
}
}
写一个测试类调用
package Day01;
public class DemoStudent {
public static void main(String[] args) {
Student stu1 = new Student();//调用时直接new,执行无参构造
System.out.println("***************");
Student stu2 = new Student("王八",20);//全参构造
System.out.println("姓名:" + stu2.getName()+",年龄 :" + stu2.getAge());
//如果需要改变对象中的成员变量的内容,仍然需要使用setXxxx方法
stu2.setAge(21);
System.out.println("姓名:" + stu2.getName()+",年龄 :" + stu2.getAge());
}
}
有错误感谢指正。