目录
1.什么是方法?
所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块。例如:在类中定义了一个机器类,对这个类进行实例化一个对象叫做电视机。电视机有开关的动作把。那么在类中定义一个方法,专门实现这个电视机开关。
public class machine { //定义了一个机器类
public void method1(){ //定义了一个打开方法
System.out.println("打开它");
}
public void method2(){ //定义了一个关闭方法
System.out.println("关掉它");
}
public static void main(String[] args) {
machine tv=new machine(); //实例化一个电视机对象
tv.method1(); //调用打开方法
tv.method2(); //调用关闭方法
}
方法有,构造方法,普通方法
1-1定义一个方法
public 方法类型 方法名(){ }
调用方法 创建一个对象 对象.方法名
方法有无参无返回值 ,无参有返回值, 带参无返回值, 带参带返回值,这四种类型。
(1)无参无返回值 void类型
(2)无参有返回值
比如我要在方法中实现两个数字之和,返回它的sum结果。
public class text {
public int sum1(){
int num1=2,num2=3,sum=0;
sum=num1+num2;
return sum;
}
public static void main(String[] args) {
text one=new text();
System.out.println(one.sum1());
}
}
(3)带参无返回值
public class text {
public void sum1(int num1,int num2){
int sum=0;
sum=num1+num2;
System.out.println(sum);
}
public static void main(String[] args) {
text one=new text();
one.sum1(5,3);
}
}
(4)带参带返回值
public class text {
public int sum1(int num1,int num2){
int sum=0;
sum=num1+num2;
return sum;
}
public static void main(String[] args) {
text one=new text();
System.out.println(one.sum1(5,3));
}
}
1-2.构造方法
构造方法 :具有和定义它的类完全相同的名字。(public machine(){ })
普通方法:就是一般的方法 (public void method(){ })
单单从外观可以看出构造方法时没有返回值类型。一个类可以不定义构造方法,通常情况下,类中隐含着一个空的无参构造方法,只是不显示出来,这个构造方法就是默认构造方法,当类中没有明确定义一个构造方法时才会自动提供。
构造方法特殊性:1.构造方法必须具备和所在类一模一样的名字。
2.构造方法没有返回值类
3.构造方法的作用就是初始化对象
那么构造方法时用来干什么的?是用来构造对象的。为了能够从一个类构造对象,使用new这个操作符调用这个类的构造方法。当你实例化一个对象时,是要用到new去创建一个对象,就是在调用构造方法。
public class machine {
public machine(){
System.out.println("这是个构造方法");
}
public static void main(String[] args) {
machine tv=new machine(); //创建了一个tv对象
new machine(); //调用了构造方法
}
结果:这是个构造方法
这是个构造方法
那么为什么会出现两个“这是个构造方法”,因为在实例化一个tv时new了,就是调用了一下构造方法,下一行又调用了一下。
1.3构造方法有 无参构造和有参构造
有参构造方法 public 类名(参数类型 参数名 ,.......) { }
public class machine {
String name;
int money;
public machine(String name,int money){
System.out.println(name+" "+ money);
}
public static void main(String[] args) {
machine tv=new machine("Lg",3000);
}
}
机器类定义了name和money属性,然后定义了一个有参构造方法。
2.向方法传递对象参数
给方法传递一个对象,是将对象的引用传递给方法。
就如上图,将Lg传给name ,3000传给money。
2-1对象数组
数组既可以存储基本类型值,也可以储存对象。
例如:
machine[] arr=new machine[10]; //创建长度为10的对象数组 for (int i = 0; i < arr.length ; i++) { arr[i]=new machine();