面向对象:首先抽离出参与的对象,然后调用对象相关方法来完成执行程序的需求。将参与的的实物分成一个个对象。
面向对象的三个路线“:1,类及类的成员 属性 方法 代码段 内部类等
类是对象的模版,对象是类的具体事例。
普通方法:
1需要有访问权限修饰符 public private protected
2需要有返回值类型
3需要有方法名:在同一类中方法的签名不重复(方法签名:方法名+参数列表(参数的类型,个数,+顺序,不同))
package egjava;
public class lei {
private String name;
private String age;
//普通方法
public void sleep(int a) {
}
public void sleep(int a,String b) {
}
}
4方法重载:方法名相同,参数列表不同的方法
public class lei {
private String name;
private String age;
//普通方法
public int add(int a,int b) {
return a+b;
}
//方法:访问权限符+返回值的类型 +方法名+(参数)
public Double add(Double a,Double b) {
return a+b;
}
}
5有参数列表但参数列表可能为空
6可以由关键字static final等修饰
构造方法
1构造方法是一种特殊的方法,无需返回值类型,方法名和类名一致,用于对相初始化
2构造方法在对象被创建时使用
4一类中可以有一个无参的构造方法,一旦自行书写了构造方法,就会覆盖原来的方法
3一类中可以有一个和一个以上的构造方法,就是受构造方法也有重载
5书写任意的构造方法都需要覆盖原来的构造方法,如需要使用原来的构造方法则需要提前说明
this:那个对象调用该方法,this就是指该对象 代表当前对象
1
、哪个对象调用该方法,那么
this
指的就是该对象
, this
代表当前对象
2
、
this
可以修饰属性,可以省略,但是当方法中局部变量名跟属性名一样,要区分时必须使用
3
、
this
可以修饰方法
,
在一个对象方法中调用另一个对象方法,
this
可以省略
4
、在类方法中不能使用
this ,static
关键字是对类而言,
this
关键字是对对象而言,类比对象要早出
现,所以不能使用
5
、
this()
可以在构造方法中调用其他构造方法
6
、
this()
不能普通方法中使用,只能在构造方法中使用
7
、
this()
在构造方法中使用必须是第一行
8
、在一个类中两个构造方法不能通过
this()
相互调用
9
、不能与
super()
同时使用
? (super
也必须是第一行
)
方法参数
参数类型
:
形参
:
方法定义时,设置的参数
实参
:
方法调用时
,
设置的参数
参数传递方式
:
值传递
:
在方法调用时
,
实参通过把他的内容副本出入方法内部,此时形参会接收实参的一个拷贝
引用传递
:“
引用
”
也就是指使用真是内容的地址值
java
中只有值传递
可变参数
:
指在调用方法时传入不定长度的参数
,
本质上是基于数组实现的
可变参数可以接收多个参数值,也可以不接受参数值,如果是多个参数值会以数组的形式接收
可变参数只能作为函数的最后一个参数,一个函数中最多只能有一个可变参数
可变参数在编译之后,在方法签名中是以数组形态出现的,如果两个方法签名相同,不能方法重载
可变参数作为参数的方法可以传入数组类型的数据或者直接传入多个数据,但是数组作为参数的方法只能传入数组类型的数据
可变参数
只在调用方法时传入