构造方法
1.构造方法概述和格式
A:构造方法概述和作用
创建对象,给对象中的成员进行初始化
B:构造方法格式特点
a:方法名与类名相同
b:没有返回值类型,连void都没有
c:没有具体的返回值
2.构造方法的重载及注意事项
A:案例演示
构造方法的重载
B:构造方法注意事项
a:如果我们没有给出构造方法,系统将自动提供一个无参构造方法。
b:如果我们给出了有参数构造方法,系统将不再提供默认的无参构造方法。
注意:如果我们还想使用无参构造方法,就必须自己给出。建议自己给出无参构造方法
C:给成员变量赋值的两种方式
a:setXxx()方法
b:构造方法
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/2235fdf18e9ae42503163f38bdb903d9.png)
3.一个标准学生类的代码及测试
A:案例演示
完善一下我们的学生的类
B:给成员变量赋值:
a:setXxx()方法
b:构造方法
C:输出成员变量值的方式:
a:通过getXxx()分别获取然后拼接
b:通过调用show()方法搞定
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/0a09e3d18ea0e053b19fb6059759e857.png)
4.一个标准手机类的代码及测试
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4d44ff7b9ebceeebf4e0a70ecb84ae1e.png)
5.创建一个对象的步骤
A:画图演示
画图说明一个对象的创建过程做了哪些事情?
Student s = new Student();
步骤:
(1):加载Student.class文件进内存
(2):在栈内存为s开辟空间
(3):在堆内存为学生对象开辟空间
(4):对学生对象的成员变量进行默认初始化
(5):对学生对象的成员变量进行显示初始化
(6):通过构造方法对学生对象的成员变量赋值
(7):学生对象初始化完毕,把对象地址赋值给s变量
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/5f155a8f5d6c8a8b94dc3463c59a33de.png)
6.案例演示
A:长方形案例练习
需求:
定义一个长方形(Rectangle) 类, 定义求周长(length) 和面积(area) 的方法,
然后定义一个测试类Test,进行测试。
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/08960e6d1c63dd37e6d1b0d6a9610407.png)