Java笔记09:面向对象-属性和方法
1.对象属性的默认值
- 对象的属性是有默认值的
- 除了基本数据类型的(00.0false)
- 之外,引用数据类型的默认值为null
- null的含义是没有引用任何内容
2.方法重(chong2)载(方法超载,overload)
1)方法签名
#### 每个方法的定义都包含:
修饰词,返回值类型,方法名,参数列表
方法签名=方法名+参数列表
每个类中不允许方法签名完全相同的方法
但是方法名相同,参数列表不同是允许的
2)什么是方法重载
在同一个类中 方法名相同 参数列表不同的 多个方法
2.1)参数列表不同包含
数量,类型,顺序
2.2)方法的修饰符和返回值类型 对方法重载是无关的
3)方法重载在代码编译时确定 运行哪个方法 又称编译期绑定
4)系统中的方法重载和方法重载的好处
4.1)方法重载的好处在于
不需要程序员记忆过多的 相似功能的方法名 只需要通过传入的参数区分即可
4.2)系统中利用的方法重载编写
了很多内容,供程序员使用
3.构造方法(构造函数构造器)
1)什么是构造方法
在对象被实例化时运行的一个特殊的方法
2)为什么需要构造方法
一般在构造方法中为属性赋初值
3)怎么编写一个构造方法
public <类名>(){
//方法体
}
- 1.构造方法没有返回值类型
(连void都不写) - 2.构造方法的方法名必须和类名相同
- 在实例化对象时,会自动运行构造方法
4)构造方法的注意事项
- 4.1)如果一个类中没有编写构造方法
系统会自动给这个类分配一个
默认的无参构造 - 4.2)如果一个类中编写了任意一个
构造方法,那么系统就不会
给这个类分配默认构造了 - 4.3)构造方法可以重载
- 4.4)构造方法只能在实例化对象时
调用,不能使用对象打.调用
4.成员变量和局部变量
1)类中定义的属性就是成员变量
方法中定义的变量和方法的形式参数 就是局部变量
2)区别
2.1)作用域不同
成员变量: 类中的所有方法
均可以使用
局部变量: 只有定义它的方法
中可以使用
2.2)初始默认值不同
成员变量: 0\0.0\false
null
局部变量: 没有初始值
2.3)优先级不同
如果在一个方法中
使用了成员变量和局部变量
同时存在的变量名
优先使用局部变量
5.this关键字
1)什么是this
方法中对象对自身的引用
2)this.属性
能区分成员变量和局部变量
3)this.方法
调用当前类中的方法
4)this(<参数>)
调用当前类的构造方法 必须写在构造方法中,而且必须是第一行