快速入门
1 | import java.util.Scanner; |
创建对象流程
- 先加载类信息(属性和方法信息,只加载一次)
- 在堆中分配对象空间,进行默认初始化(看规则),然后把对象地址赋值给栈中的变量
赋值和函数传递
- 对象是引用类型,属于引用赋值和引用传递
1 | public class MethodClass { |
方法
1 | 访问修饰符 返回数据类型 方法名(形参列表...){ |
- void 表示没有返回值
重载
相同的方法名不同的形参列表
- 满足条件
- 方法名:必须相同
- 形参列表: 必须不同(形参类型或个数或顺序,至少有一样不同,参数名无要求)
- 返回类型:无要求
1 | public class OverLoad { |
可变参数
- 注意事项
- 可变参数的实参可以为0个或任意多个
- 可变参数的实参可以为数组
- 可变参数的本质就是数组
- 可变参数可以和普通类型的参数一起放在形参列表,但必须保证可变参数在最后
- 一个形参列表中只能出现一个可变参数
1 | public class VarParam { |
构造器
- 注意
- 构造器没有返回值,也不能写void
- 构造器的名称必须和类名一样
- 构造器可以进行重载
- 构造器是完成对象的初始化,并不是创建对象,new还是创建对象
- 构造器只能是创建对象时系统自动调用,不能时使用对象显示调用
- 如果程序员没有定义构造器,系统会自动给类生成一个默认无参的构造器(也叫默认构造器),一旦定义了自己的构造器,默认的构造器就覆盖了,就不能使用默认的无参数构造器,除非显示的定义一下
1 | public class Construct { |
this的用法
代表的被调用对象
- 注意事项
- 放问成员方法的语法:this.方法名(参数列表)
- 访问构造器语法:this(参数列表);注意只能在构造器中使用
- this不能在类定义的外部使用,只能在类定义的方法中使用