方法
事物的行为
class Car{
static void all(){
System.out.println("荷载25人");
System.outprintln("最高时速240km/h");
}
int load(int person){
int carring = person*50;
return carring;
}
}
方法格式
方法修饰符 方法返回值 方法名([参数列表]){
方法体
}
方法优点:提高代码的复用性
方法重载
overload:同一个类中,方法名相同,参数列表不同(类型和个数不同);
方法的返回值相同;
方法重载:体现了程序的灵活性
calss Car{
all(int load){};
all(int load,int speed){};
all(int load,int speed,int price){};
}
可变参数
参数形式:类型+三个点+参数名
可变参数优点:在不知道参数个数的情况下可以传入多个对象进去
class xx{
static void MultipleParam(Object... args){
for(Object obj: args ){
System.out.println(obj);
}
}
public static voide main(String[] args){
int a = 1;
int b = 2;
int c = 3;
MultipleParam(a,b,c);//输出1,2,3
}
}
形参和实参
形参:定义方法时参数列表里规定的参数类型和参数名
实参:方法调用时,传入的实际参数
值传递:方法调用时,实际参数将它的值传递给形式参数;
形参接收的是实参copy值,在方法中修改形参,实际参数不会改变;
引用传递:方法调用时,实际参数的引用(指内存地址,不是参数的值)被传递给方法中相应的形式参数
此时形参和实参指向同一内存地址,在方法中修改形参,实参对象也会改变。
基本数据类型(值传递)传递的参数为实参的copy值,对形参的修改不会影响实参。
引用类型(引用传递)传递参数为实参对象地址值,形参和实参指向同一内存地址,对形参的修改会影响实参对象
基本类型的包装类(值传递)是immutable类型,也可看成是值传递操作。
构造方法
(构造函数或者构造器)与类同名的方法;
不能指定返回类型,不能用void修饰;
用于初始化对象;
如果不提供构造方法,编译器默认提供无参构造方法。
不能被static、final、synchronized、abstract和native修饰
无论构造方法是否使用,都建议手动提供无参构造方法。
构造方法格式:
修饰符 类名([参数列表]){方法体};
代码块
静态代码块: static{},存在于类中方法体外;只加载一次(随着类的加载而加载);优先级最高;静态代码中不能存放普通变量,不能访问普通变量;配置文件可存放于静态代码块中。
构造代码块:{},没有static修饰,存在于类中方法体外;随着对象的创建而加载;优先级低于静态代码块;
构造函数:用于对象初始化,创建对象时调用。
普通代码块:定义在方法中,用{}
代码块执行优先级:静态代码块>构造代码块>构造函数>普通代码块
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。