目录
1.构造方法
1.1构造方法概述
构造方法是一种特殊的方法
作用:创建对象
格式:
public class 类名{
修饰符 类名(参数){}}
还拿学生案例来改编
学生类
package com.test; public class student { //成员变量 private String name; private int age; //构造方法 public student(){ System.out.println("无参构造方法"); } //成员方法 public void show(){ System.out.println(name); System.out.println(age); } }
学生测试类
package com.test; public class studentdemo { public static void main(String[] args) { //创建对象 student s=new student(); s.show(); } }
1.2构造方法的注意事项
①构造方法的创建
如果没有定义构造方法,系统将给出一个默认的无参数构造方法如果定义了构造方法,系统将不再提供默认的构造方法
②构造方法的重载
如果自定义了带参构造方法,还要使用无参数构造方法,就必须再写一个无参数构造方法③推荐的使用方式
无论是否使用,都手工书写无参数构造方法
还拿学生案例来做示范
学生类
package com.test; public class student { //成员变量 private String name; private int age; //构造方法 public student(){ } public student(String name){ this.name = name; } public student(int age){ this.age=age; } public student(String name,int age){ this.name=name; this.age=age; } //成员方法 public void show(){ System.out.println(name); System.out.println(age); } }
学生测试类
package com.test; public class studentdemo { public static void main(String[] args) { //创建对象 student s1=new student(); s1.show(); //public student(String name) student s2=new student("zyy"); s2.show(); //public student(int age) student s3=new student(18); s3.show(); //public student(String name,int age) student s4=new student("jwei",18); s4.show(); } }
1.3标准类制作
①成员变量
使用private修饰
②构造方法
提供一个无参构造方法
提供一个带多个参数的构造方法③成员方法
提供每一个成员变量对应的setXxx()/getXxx()提供一个显示对象信息的show()
④创建对象并为其成员变量赋值的两种方式
无参构造方法创建对象后使用setXxx()赋值使用带参构造方法直接创建带有属性值的对象
学生案例继续来做示范
学生类
package com.test; public class student { //成员变量 private String name; private int age; //构造方法 public student(){ } public student(String name,int age){ this.name=name; this.age=age; } //成员方法 public void setName(String name){ this.name=name; } public String getName(){ return name; } public void setAge(int age){ this.age=age; } public int getAge(){ return age; } public void show(){ System.out.println(name); System.out.println(age); } }
学生测试类
package com.test; public class studentdemo { public static void main(String[] args) { //无参构造方法创建对象后使用setXxx()赋值 student s1=new student(); s1.setName("zyy"); s1.setAge(18); s1.show(); //使用带参构造方法直接创建带有属性值的对象 student s2=new student("jwei",18); s2.show(); } }