Java 入门14 构造器 this 关键字 封装 标准JavaBean 使用标准JavaBean 改造 成员变量 局部变量的区别
无参构造器 与有参构造器
(任何类定义出来,默认就自带了有参构造器,写不写都有.一定定义了有参构造器,无参构造器就没了,此时就需要自己写一个无参构造器了)
package com.heima.Car; public class Car { String name; double price; //无参构造器 public Car(){ System.out.println("无参构造器被触发执行~~~"); } //有参构造器 public Car(String n,double p){ System.out.println("有参数构造器被触发执行~~~~~"); name=n; price=p; } }
Test 测试
package com.heima.Car; public class Test { public static void main(String[] args) { Car c1=new Car(); System.out.println(c1.name);//null System.out.println(c1.price);//0.0 Car c2=new Car("宝马",90); System.out.println(c2.name);//宝马 System.out.println(c2.price);//90 } }
Car类
public class Car { String name; double price; //this出现在有参构造器中的用法(this 代表当前对象的地址) public Car(String name,double price){ this.name=name; this.price=price; } //this 用去区分访问当前对象的成员变量与方法变量 public void goWith(String name){ System.out.println(this.name+"正在和"+name+"比赛! "); } }
Test 测试类
package com.heima.ThisDemo; public class Test { public static void main(String[] args) { Car c=new Car("奔驰",39); System.out.println(c.name); System.out.println(c.price); c.goWith("宝马"); } }