个人主页: Aileen_0v0
系列专栏:Java学习系列专栏
个人格言:"没有罗马,那就自己创造罗马~"
目录
回顾
构造方法
this关键字
面试题
构造方法的类型
下节预告
代码块
之前我们学习了什么是类 什么是对象 什么是面向对象编程
定义类
构造方法:它的方法名和类名相同,且无返回值
package lecture1;
class Person{
private String name;
private int age;
//构造方法 - 总是和类名相同,且无返回值
//当没有构造方法的时候,编译器会自动提供一个,不带参数的构造方法
//构造方法作用:实例化一个对象
public Person() {
System.out.println("Person");
}
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;
}
//@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
",age=" + age +
"}";
}
}
public class TestDemo {
public static void main(String[] args) {
Person person = new Person();
}
}
package lecture1;
class Person{
private String name;
private int age;
//构造方法 - 总是和类名相同,且无返回值
//当没有构造方法的时候,编译器会自动提供一个,不带参数的构造方法
//构造方法作用:实例化一个对象
//构造方法1:
public Person() {
System.out.println("Person");
}
//构造方法2:
public Person(String name, int age) {
this.name = name;
this.age = age;
System.out.println("Person");
}
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;
}
//@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
",age=" + age +
"}";
}
}
public class TestDemo {
public static void main(String[] args) {
Person person1 = new Person();
System.out.println(person1);
Person person2= new Person("bit" ,19);
System.out.println(person2);
}
}
运行结果:
面试题
this关键字代表对象,这句话是否正确?为什么?
不正确,因为this表示的是对象的引用
this:
this() : 调用自己的构造方法 ---> 只能在构造方法里面写
this.data:调用当前对象的属性
this.fun():调用当前对象的方法
中间调用构造方法3报错信息告诉我们:在一个构造方法里面只能调用一次其他构造方法,否则会报错.
构造方法1:无参数
构造方法2:两个参数
构造方法3:一个参数
本节主要讲Java面向对象编程的构造方法的应用以及this关键字的使用.喜欢的小伙伴多多三连吧,Java学习系列专栏,订阅专栏,可以获得更新提醒❤️这里是Aileen.