Java--可变参数--作用域--构造器--this
目录
可变参数:
注意事项和细节:
作用域:
注意事项和细节:
构造器:
注意事项和细节:
this:
注意事项和细节:
介绍:java中允许同一个类中,多个同名方法的存在,但要求新参列表不一致。
好处:
1. 减轻了起名的麻烦
2. 减轻了记名的麻烦
注意事项和细节:
1. 方法名:必须相同
2. 新参列表:必须不同(形参类型或个数或顺序,至少有一项不同,参数名无要求)
3. 返回类型:无要求
可变参数:
概念:允许将同一个类中多个同名同功能但参数个数不同的方法,封装成一个方法。
语法:访问修饰符 返回类型 方法名 (数据类型... 形参名){
}
注意事项和细节:
1. 可变参数的实参可以为0个或者任意多个
2. 可变参数的实参可以为数组
3. 可变参数的本质就是数组
4. 可变参数和普通类型的参数一起放在参数列表,但必须保证可变参数在最后
5. 一个形参列表中只能出现一个可变参数
作用域:
基本使用:面向对象中,变量作用域是非常重要的知识点,相对来说不是特别好理解。
1. 在java编程中,主要的变量是属性和局部变量
2. 我们说的局部变量一般是指在成员方法中定义的变量。
3. java中作用域的分类
全局变量:也就是属性,作用域为整个类体Cat类
局部变量:也就是除了属性之外外地其他变量,作用域为定义它的代码块中
4. 全局变量可以不赋值,直接使用,因为有默认值,局部变量必须在赋值后才能使用,因为没有默认值。
注意事项和细节:
1. 属性和局部变量可以重名,访问时遵循就近原则
2. 在同一个作用域中,比如在同一个成员方法中,俩个局部变量,不能重名
3. 属性生命周期较长,伴随着对象的创建而创建,伴随着对象的销毁而销毁。局部变量,生命周期较短,伴随着它的代码块的执行而创建,伴随着代码块的结束而销毁。
4. 作用域范围不同
全局变量/属性:可以被本类使用,或其他类使用
局部变量:只能在本类中对应的方法中使用
5. 修饰符不同:
全局变量/属性可以加修饰符
局部变量不可以加修饰符
构造器:
介绍:构造方法叫构造器,是类的一种特殊的方法,它的主要作用是完成对新对象的初始化。
特点:1.方法名和类名相同
2.没有返回值
3.在创建对象时,系统会自动的调用该类的构造器完成对象的初始化
注意事项和细节:
1. 一个类可以定义多个不同的构造器,即构造器重载
2. 构造器名和类名要相同
3. 构造器没有返回值
4. 构造器是完成对象的初始化,并不是创建对象
5. 在创建对象时,系统会自动的调用该类的构造方法
6. 如果程序员没有定义构造器,系统会自动给类生成一个默认无参的构造器
7. 一但定义了自己的构造器,默认的构造器就覆盖了,就不能再使用默认的无参构造器,除非显示的定义一下。
对象创建的流程分析:
1. 加载Person类信息,只会加载一次
2. 再堆中分配空间
3. 完成对象初始化
4. 在对象在堆中的地址,返回给P(p是对象名,也可以理解成是对象的引用)。
this:
注意事项和细节:
1. this关键字可以用来访问本类的属性,方法,构造器
2. this用于区分当前类的属性和局部变量
3. 访问成员方法的语句:this.方法名(参数列表)
4. 访问构造器语法: this(参数列表);注意只能在构造器使用,必须放在第一条语句
5. this不能在类定义的外部使用,只能在类定义的方法中使用。