java中的方法
方法的定义
方法定义类的某种行为(或功能),是功能的实现
方法的五要素:访问修饰符 返回值类型 方法名 参数列表 方法体
例如:
方法中的返回值类型:
如果方法有返回值,方法中必须要使用关键字return返回某个值,返回值类型为该值的类型,并且返回值只能有一个。
return的作用:结束方法,返回结果。
注意:当调有返回值的方法时,需要定义一个变量去接收
如果方法没有返回值 返回值类型为void
有返回值:
没有返回值:
方法的调用:
1 创建这个类的对象 类名 对象名(自取) = new 类名();
2 对象名.方法名();
方法之间的调用:方法之间允许互相调用,不需要知道方法的具体实现,实现重用,提高效率
方法的参数
无参方法:
带参方法
调用带参数的方法:
对象名.方法名(参数1,参数2,参数3.......)
有参方法的调用
调用有参方法时,必须要传递对应类型的参数,否则会报错。
构造方法:
构造方法的作用:创建对象,初始化对象
特点:
1 无参构造方法,与类同名,没有返回值。如果类中没有显示无参构造方法 系统会默认给一个无参构造方法
2 构造方法一般都是public 才能被系统调用
3 当成员变量(属性) 和方法的参数同名时 一般使用this表示当前对象 如:this.name = anme;
4 当类有了带参构造方法之后,系统不再主动生成默认的无参构造方法 这个时候必须要自己手动去写一无参构造方法
5 构造方法只能用于创建对象 不能像在其他程序中调方法一样调它 但是可以用this() 的形式在其他构造方法中调用 注意this()必须位于第一行
构造方法和普通方法的区别:
1 构造方法的访问修饰符一般都是public 一般方法的访问修饰符根据实际情况来选择修饰符
2 构造方法没有返回值 一般方法肯定还有返回值类型 要么是void 要么根据根据返回的数据的类型来选择
3 方法名与类名同名 一般方法的方法名 遵循驼峰命名规则
4 构造方法的方法体是对象的初始化代码 一般方法是功能的实现
5 调用方式不一样 普通方法需要对象来调用 构造方法是new this super
方法的重载
什么是方法的重载?在同一个类中有一些方法的功能相同 仅仅是参数列表不一样,这个时候如果去定义不同的方法就会狠麻烦 ,于是就有了方法的重载 方法名一样 参数列表不一样
方法重载的判断标准:同类同名不同参(参数的个数 顺序 类型不同) 与其他无关
this的用法
this 当前对象 谁调用了这个方法 this表示的就是谁
this 可以用来为属性赋值 调用方法 调用构造方法
this() 表示调用无参构造方法 必须位于第一行 当this调用构造方法时 必须要位于第一行 如果是其他方法的话 可以不放在第一行
成员变量 与 局部变量
成员变量就是类的属性 类中的每一个方法都可以共享
局部变量 就是定义在某个方法中的变量 只能在方法中访问,其他的方法都不能访问
成员变量和局部变量的区别:
1 定义位置不同
成员变量:定义在类中 属于类
局部变量:定义在方法中的变量,属于方法
2 作用域不同
成员变量:属于类,类中的每一个方法都可以访问
局部变量:属于方法,只能在某一个方法中使用
3 初始值不同
成员变量:有默认的初始值 在类加载的时候,就会给成员变量赋值(默认值 String类型的默认值是null int
类型的默认值是0)
局部变量:没有初始值 必须在初始化之后才可以使用
4 生命周期不同
成员变量:属于类 随着类的创建而创建 随着对象的消失而消失
局部变量:属于方法 随着方法的调用而创建
注意:
1 在同一个类中 成员变量和局部变量同名时 局部变量具有较高的优先级
2 在方法的参数列表中的参数 也是局部变量