1.构造方法(无参构造、有参构造),
当有多个有参构造时,参数列表不同(类型或个数),表示方法重载
例如:
public class Dog{
private String name;//当用this.name时,调用该属性
//默认隐式存在无参构造方法(当手动编写有参构造时,该功能失效)
public Dog(){
}
//有参构造可以有多个,只要参数列表中类型或个数不同即可
public Dog(String name){
this.name = name;
}
}
public static void main(){
Dog dog1 = new Dog();
Dog dog2 = new Dog("二狗");
}
2.静态方法(例如:main主程序入口方法,static修饰的方法)
3.实例方法(通过对象名“.”出来的方法)
1.如何定义类的方法
①访问修饰符
②方法的返回值类型
③方法的名称
④方法的主体
步骤一:定义方法名和方法返回值类型
步骤二:编写方法体
public 返回值类型 方法名(){
//方法的主体
}
2.方法的返回值
两种情况:
①如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该返回值类型。
public class Student{
String name = "张三";
public String getName(){
return name;
}
}
② 如果方法没有返回值,返回值类型为void。
public class Student{
String name = "张三";
public void getName(){
}
}
语法
return 表达式; 作用:跳出方法,返回结果。
3.方法调用
语法
对象名.方法名();
方法之间允许相互调用,不需要知道方法的具体实现,实现重用,提高效率。
Student类的方法a( )调用Student类的方法b( ),直接调用
public void a( ) {
b( ); //调用b( )
}
Student类的方法a( )调用Teacher类的方法b( ),先创建类对象,然后使用“.”调用
public void a( ) {
Teacher t = new Teacher( );
t.b( ); //调用Teacher类的b()
}
4.成员变量和局部变量
①变量申明位置决定变量作用域。
②变量作用域确定可在程序中按变量名访问该变量的区域。
public class AutoLion{
变量1类型 变量1;
变量2类型 变量2; 成员变量 在AutoLion类的方法,其他类的方法,可以使用。
变量3类型 变量3;
public 返回类型 方法1(){
变量4类型 变量4; 局部变量 在方法1中可以使用
}
public 返回类型 方法2(){
变量5类型 变量5; 局部变量 在方法2中可以使用
}
}
成员变量和局部变量的区别
①作用域不同
1.局部变量的作用域仅限于定义它的方法。
2.成员变量的作用域在整个类的内部都是可见的。
②初始值不同
1.Java会给成员变量一个初始值。
2.Java不会给局部变量赋予初始值。
注意
①在同一个类中,成员变量和局部变量同名时,局部变量具有更高的优先级
②在同一个方法中,不允许有同名局部变量。在不同的方法中,可以有同名局部变量
访问修饰符 返回值类型 方法名 (参数列表){
//方法体
}
此时的参数列表是形参
形参:顾名思义:就是形式参数,用于定义方法的时候使用的参数,是用来接收调用者传递的参数的
对象名.方法名 (参数列表)
此时的参数列表是实参
实参: 顾名思义:就是实际参数,用于调用时传递给方法的参数。实参在传递给别的方法之前是要被预先赋值的。
参数列表:
(数据类型 参数1,数据类型 参数2…)
注意: 传递的参数要与参数列表一一对应
1.定义带参数的方法
<访问修饰符> 返回类型 <方法名>(<形式参数列表>) {
//方法的主体
}
访问修饰符: 该方法蕴蓄被访问调用的权限范围
返回类型:方法返回值的类型
形式参数列表:传送给方法的形参列表
2.调用带参数的方法
类名 对象名 = new 类名();
对象名.方法名(参数1, 参数2,……,参数n)
注意:
①先实例化对象,再使用方法
②实参的类型、数量、顺序都要与形参一一对应