----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
方法:定义在类中的具有特定功能的一段独立程序,是对某一功能的封装,然后在调用函数中调用
1.构造方法:①构造方法的名字必须与类名完全相同
②除了访问权限修饰符外,不能用任何其他修饰符修饰,不能有返回值类型,也不能用void修饰,而且一般情况下不用private修饰,这会导致不能在外部创建类对象
③每个类都有且至少有一个无参或有参的构造方法,即使程序员不自定义,系统也会自动定义一个隐式的无参构造方法
④类中可以有多个构造方法,但要求每个构造方法的参数列表都不同,即以重载的形式存在
⑤一般情况下,第一个被执行
⑥主要用于申请内存(创建对象并对对象引用进行初始化)、对类的成员变量进行初始化操作(用于实现对应对象天生就带有的某种属性或功能)
2.抽象方法:①只声明返回值类型、方法名称和所需的参数,没有方法体,也就是说抽象方法只需要声明,不需要实现
②抽象方法必须被继承其所在抽象类的子类所重写
③有抽象方法的类一定是抽象类,但抽象类中不一定只有抽象方法
④抽象方法就是将各子类所共有的功能抽象成一个方法,但由于不知道各子类的这种功能的具体实现形式所以抽象方法是没有方法体的
3.静态方法:①静态方法在本类中可以直接调用,即方法名(参数)
②在外部类中调用静态方法时,可以使用“类名.方法名”或“对象名.方法名”(不推荐)
③静态方法中不能使用this和super关键字
④静态方法中只能访问静态成员变量,即类名.静态变量名
⑤静态方法在内存中只有一份,不管这个类有多少对象,都共用这一个方法,也就是说,静态方法是所有类对象所具有的完全一样的功能,包括方法体也一样
4.一般方法:①各种访问修饰符、各种返回值类型(void)、各种方法名、各种参数列表、各种实现方式
②对于方法名后的参数列表来说,是具有顺序限制的。名称相同、类型相同,但顺序不同,也是不同的参数列表
③方法名后的参数列表是为了接收并替代实际参数的,而在调用这个方法时,才向其后面的括号中写入实际参数
④方法中只能调用方法,不能再定义方法
⑤定义一个方法时,方法的返回结果应该交由调用方法处理
⑥当一个方法没有返回值时,在其调用者中不能输出结果
⑦同类中,两种方法不能互相调用
补充:子类中构造方法的特点:
①当父类与子类中都有构造方法时,JVM会在子类的构造方法的第一行默认一个隐式语句:super(),也就是说,子类一定会访问父类的构造方法,因为子类要想访问父类中的数据,那它就得先知道父类中的数据是怎样初始化的
②显式地调用父类的某个构造方法:super(参数)
③祖类中也有super(),因为它继承的是上帝类—Object
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------