前言
在面向对象编程中,学会构造方法能使得代码更加简洁,本文将具体介绍有关构造方法及其相关的知识点
this关键字
定义
this关键字的用处是调用成员变量中的值,而不是通过就近原则调用方法里的值
作用
区别成员变量和局部变量
代码实现
用IDEA来实现一下
具体代码如下
package test5; public class Person1 { private int age; public void method(){ int age = 18; System.out.println(this.age); System.out.println(age); } }
package test5; import test3.Person; public class Person1Test { public static void main(String[] args) { Person1 p = new Person1(); p.method(); } }
可以看出 this.age 调用的是成员变量中的值,由于没有赋值,所以是默认值0.
构造方法
格式
public class 类名{ 修饰符 类名(参数){ 方法体; } }
构造方法也分为:空参构造和带参构造
特点
1.方法名与类名完全相同,大小写要一致
2.无返回值(return),也不需要void
3.一般用 public 声明变量
4.每个类至少有一个构造方法
5.构造方法可以重载
注意事项
1.如果没有定义构造方法,系统会给一个默认的无参数构造方法
2.如果定义了构造方法,系统不会提供默认构造方法
3.带参构造和空参构造是构造方法的重载
4.最好将带参构造和空参构造全部写上,防止出bug
代码实现
package test5; public class Student { //定义成员变量 private String name; private String gender; private int age; //空参构造 public Student(){ } //带参构造 public Student(String name, String gender, int age){ this.name = name; this.gender = gender; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
package test5; public class StudentTest { public static void main(String[] args) { Student s = new Student("张三","男",18); System.out.println(s.getName()); System.out.println(s.getGender()); System.out.println(s.getAge()); } }
结语
构造方法是很重要的知识点,在下一篇中会介绍剩余的知识点