字段的封装
public字段可由外部任意访问,不便于对它的值进行逻辑校验和控制,惯例上Java类的字段应该是私有的,给它添加一对方法分别用于读(getter)和写(setter), 这称为"封装字段"。
![e512987886acb4d20c90ac78c5bf9bdd.png](https://i-blog.csdnimg.cn/blog_migrate/147ea0d3bebdda8609951721b3d752b0.jpeg)
构造器
构造器(Constructor)也称为构造函数、构造方法。它的作用是: 构造类的实例/完成对象的初始化工作。
它有2个特征:
1. 与类同名
2. 不声明返回类型(即使是void也不需要)
注明:构造器在使用new关键字创建对象时调用!
无参构造函数:
![4236bb1ba1740111d70c4a938cf9f2fc.png](https://i-blog.csdnimg.cn/blog_migrate/419950dedce91042248178c7492ab0d7.jpeg)
当一个类没有编写构造器时,Java会给这个类分配一个默认的无参构造器, 称为"隐式构造器"。
有参构造函数:
![4fd6c463c444c4f29e2da0b0bfdfabaa.png](https://i-blog.csdnimg.cn/blog_migrate/736c125f77cc86a36bade7024837d68d.jpeg)
在Java中,this关键字有两种不同的用处:
1、this.***或this.***()代表每个对象本身的this引用
2、this()代表调用同一个类中的其它构造器。
注意:this()只能放在构造器的第一句!
方法重载
方法重载(Overload),它其实是一个方法的多个版本,调用时根据传参的情况(类型,个数)来决定调用哪个版本。 如:
System.out.print("hei")
System.out.print(100)
System.out.print(true)
重载有2个特征:
1. 方法名相同
2. 参数类型或个数不同
构造器也是方法的一种, 也是一种特殊的重载:
![ed4d6a178eb383397a6e1c3d427428ef.png](https://i-blog.csdnimg.cn/blog_migrate/f98b659f5b8635f5c62a28b5d9f6ce5c.jpeg)