/*
面向对象的特征:
封装: 将对象的属性和行为封装起来,不需要让外界知道具体实现细节。
继承:主要描述的就是类与类之间的关系,通过继承,可以在无需重新编写原有类的情况下,对原有类的功能进行扩展。
多态: 指的是在一个类中定义的属性和功能被其他类继承后,当把子类对象直接赋值给父类引用变量时,
相同引用类型的变量调用同一个方法所呈现出的多种不同行为特性。
面向对象的组成,重要的两个要素:
类:对一类事物的描述,抽象的定义。
对象: 实际存在的该类的某个具体个体,也称为实例(instance)
要是实现面向对象就是类的设计,要设计类实质上就是设计类的员
类的定义:
[修饰符] class 类名 [extends 父类名] [implements 接口名]{
// 类体,包括类的成员变量和成员方法
}
注意:类名使用大驼峰命名
类体重包含成员变量和成员方法
成员变量:
[修饰符] 数据类型 变量名 [ = 值];
成员方法:
[修饰符] [返回值类型] 方法名([参数类型 参数名1,参数类型 参数名2,...]){
//方法体
...
return 返回值; //当方法的返回值类型为void时,return及其返回值可以省略
}
面向对象的实现:
1. 创建类,设计类的成员
2.创建对象: 类名 对象名称 = new 类名();
3.调用对象结构:对象名称.方法/对象.属性
成员变量(属性):
分类:局部变量和成员变量
相同点:
1. 定义的格式一样
2.先声明后使用
不同点:
1.声明的位置不一样
属性: 直接定义在类中
局部变量:声明在方法内、方法形参、代码块、构造器。。。的变量
可以理解为:变量在那个{}里,他的作用域就是那个{}
2. 权限修饰符不同:
属性:在声明的时候可以使用权限修饰符,常用的修饰符(public private 缺省 protected)
局部变量:不能使用权限修饰符
3. 默认初始化值不同:
属性:有默认初始化值
整型(byte/short/int/long):0
浮点型(float/double):0.0
字符型:0或者'\u0000'
布尔型:false
引用数据类型(字符串):null,表示变量不引用任何对象
局部变量:没有初始化值;在调用局部变量之前需要先进行初始化赋值,不然会报错
4.在内存中加载的位置不一样
属性: 加载到堆空间中
局部变量:加载到栈空间
类中方法的使用:
声明:
[修饰符] [返回值类型] 方法名([参数类型 参数名1,参数类型 参数名2,...]){
//方法体
...
return 返回值; //当方法的返回值类型为void时,return及其返回值可以省略
}break,continue.
方法说明:
1.修饰符:
默认方法的权限修饰符都是使用的public,常用的修饰符(public private 缺省 protected)
2.返回值类型
如果有返回值,我们需要在声明方法的时候规定返回值的类型,使用return
如果没有返回值,在声明方法的时候使用void来表示,此时如果加入return则用于结束函数
3.参数
参数可以是0个或者n个
参数的格式: 参数数据类型 参数名1,参数数据类型 参数名2,参数数据类型 参数名3。。。。
*/