⾯向对象——对象的⾏为(⽅法)
实例化类和实例化对象版权声明:本⽂为博主原创⽂章,未经博主允许不得转载。 blog.csdn/backflip/article/details/48326259
⽅法调⽤:
1. ⼀个⽅法被调⽤时,将导致控制流程转到被调⽤的⽅法并执⾏⽅法中的语句;
2. 在执⾏⽅法中的语句时,如果⼜有其他⽅法被调⽤,将导致控制流程转到其他⽅法并执⾏⽅法中的语句;
3. 当⽅法中的语句执⾏完成,控制流程将回到调⽤⽅法处。继续执⾏⽅法后⾯的其他语句。
注意:
① Java是纯⾯向对象语⾔,Java中的⽅法只能出现在类⾥⾯;
② 在Java中,没有声明为静态的⽅法只能通过类实例化对象的⽅式调⽤;
③ 如果想编写⼀个不需要类实例化对象的⽅法,我们需要使⽤静态⽅法。
按值调⽤<;实参和形参>
概念:
当实际参数传递给形式参数时,实际参数数据被复制(拷贝)给形式参数的过程。
⽽且,不管传递给⽅法的实际参数是什么类型,相关的形式参数都会得到该数据的⼀份拷贝。<⽆论实参是什么类型,形参都会接收到数据>引⽤类型传递:
如果实参是引⽤类型,按值传递的是对象的引⽤(地址),⽽不是对象被传⼊。这样,实参和形参都引⽤同⼀个对象。
⽅法重载<;不看⽅法的返回值类型>
概念:
当有两个或多个类同名,但是有不同参数列表的⽅法时。<;根据:参数数据类型,参数个数,参数的顺序>
作⽤:
实现功能类似⽽所处理的数据类型不同的代码简化,⽅便了程序员调⽤。体现了⾯向对象的优越性。
构造器(构造函数) <⽤于初始化属性>
在Java程序中,程序如果不显⽰定义构造器,那么编译器会在编译时,⾃动添加⼀个⽆参的构造器。
这就是即使我们没有显⽰定义构造器,仍然可以实例化对象的原因。
但是,如果程序员显⽰定义构造器后,编译器在编译时,就不会⾃动添加⽆参构造器;
因此,如果定义了带参数的构造器后,⽆参的构造器需要显⽰定义,否则⽆法使⽤。
注意:
① ⼀个特殊⽅法,类实例化后,⾃动被调⽤执⾏;
② 初始化类的实例;
③ 构造器的名称必须要与类名相同
④ 是⼀个没有返回值的⽅法
⑤ 构造器可以重载,也可以有多个构造器。
this关键字 <;返回调⽤当前⽅法的对象引⽤>
作⽤:
1. 命名冲突,成员变量(属性)和⽅法名的冲突;
2. 可以通过 this 在⼀个构造器内,调⽤另⼀个构造器。注意:
1. 调⽤时,必须放在构造器的第⼀个语句;
2. ⼀个构造器最多只能调⽤⼀个构造器;
3. 不能在构造器以外的任何⽅法中调⽤构造器。