构造方法和(普通)方法的区别
一、区别:普通方法用来定义对象的功能行为,构造方法用来初始化
二、(普通)方法:有修饰符修饰的方法可以有返回值;也可以没有返回值。
1.普通方法有返回类型,方法名小写,不能和类名相同,如:void XX(){}
2.普通方法:代表对象可以干什么(行为)
三、构造方法:可创建一个对象,并可初始化对象的值,构造方法可以进行任何活动,但是经常将它设计为进行各种初始化活动,比如初始化对象的属性。初始化要调用new,如:Student student=new Student();
1.构造方法的名和类名必须相同。
2.在构造方法名的前面没有返回值类型的声明。
3.在构造方法中不能使用return语句返回一个值,void也没有。
5.构造方法分为两种:无参构造方法 有参构造方法(目的就是为了给对象实例变量赋值)。
6.当有指定构造方法时,无论该构造方法是有参,还是无参,系统都不会再自动添加无参的构造方法,没有参数的构造方法称为默认构造方法
7.构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法。
8.不能被static、final、synchronized、abstract和native修饰。
9.接口不允许被实例化,所以接口中没有构造方法。
```
package com.cqyti.chenyu6;
public class Wisher {
String name = "美的";
String size = "中等";
String color = "黑色";
//无参构造
public Wisher() {
}
//有参构造
public Wisher(String name, String color) {
this.name = name;//将里面的name赋值到外面的String name = "美的";
this.color = color;
}
//有参构造,目的就是为了给对象实例变量赋值
public Wisher(String name, String color,String size) {
this.name = name;
this.color = color;
this.size=size;
}
//方法
public void wishing() {
System.out.println("可以洗衣服");
}
@Override
public String toString() {//toString方法 fn+alt+delete方法 否则输出的对象会指向地址
return "Wisher{" +
"name='" + name + '\'' +
", size='" + size + '\'' +
", color='" + color + '\'' +
'}';
}
public static void main(String[] args) {
//创建对象、使用的无参
Wisher wisher=new Wisher();
//给无参对象赋值
wisher.name="格力";
//创建对象 有参构造 直接在创捷的时候就赋值
Wisher wisher1=new Wisher("小天鹅","red");//ctrl+p
System.out.println(wisher);
System.out.println(wisher1);
wisher.wishing();//对象wisher调用wishing方法
wisher1.wishing();
}
}
```