面向对象特性:封装 继承 多态
Java中最基本的单位是类
成员变量:事物的属性
成员方法:事物的行为
类:是一组相关属性和行为的集合
对象:是该类事物的具体体现
创建对象的格式:类名 对象名 = new 类名();
使用成员变量:对象名.变量名
使用成员方法:对象名.方法名
成员变量:在类中方法外 在堆内存 有默认初始化值
局部变量:在方法定义中或者方法声明上 在栈内存 没有默认初始化值
匿名对象:new 类名 ().方法 适用于调用一次,节省代码
可以当参数传递
封装:是隐藏对象的属性和实现细节,仅对外提供公共的访问方式
封装的一种体现形式:private
private 关键字特点:
是一个权限修饰符
可以修饰成员变量和成员方法
被修饰的成员只能在本类中访问
提供对应的getxxx()和setxxx()方法
this关键字:代表当前对象的引用
应用场景:区分成员变量和局部变量重名
有get和set方法的类叫java bean类
Construct构造:给对象进行初始化
特点:方法名和类名相同,大小写一致,没有返回值类型,连void都没有,没有具体的返回值return;
setXxx方法:修改属性值
面向对象(static关键字的特点)
static关键字的特点
a:随着类的加载而加载
b:优先于对象存在
c:被类的所有对象共享
举例:咱们班级的学生应该共用同一个班级编号。
其实这个特点也是在告诉我们什么时候使用静态?
如果某个成员变量是被所有对象共享的,那么它就应该定义为静态的。
* 举例:
* 饮水机(用静态修饰)
* 水杯(不能用静态修饰)
* 共性用静态,特性用非静态
:可以通过类名调用
* 其实它本身也可以通过对象名调用。
* 推荐使用类名调用。
* 静态修饰的内容一般我们称其为:与类相关的,类成员
面向对象(static的注意事项)
* A:static的注意事项
* a:在静态方法中是没有this关键字的
* 如何理解呢?
* 静态是随着类的加载而加载,this是随着对象的创建而存在。
* 静态比对象先存在。
* b:静态方法只能访问静态的成员变量和静态的成员方法
* 静态方法:
* 成员变量:只能访问静态变量
* 成员方法:只能访问静态成员方法
* 非静态方法:
* 成员变量:可以是静态的,也可以是非静态的
* 成员方法:可是是静态的成员方法,也可以是非静态的成员方法。
* 简单记:
* 静态只能访问静态。
针对格式的解释
* public 被jvm调用,访问权限足够大。
* static 被jvm调用,不用创建对象,直接类名访问
* void被jvm调用,不需要给jvm返回值
* main 一个通用的名称,虽然不是关键字,但是被jvm识别
* String[] args 以前用于接收键盘录入的
如果一个类中所有方法都是静态的,需要私有构造,即private 类名{} 目的是不让其他类创建本类对象,直接类名.调用即可
面向对象(说明书的制作过程)
* A:对工具类加入文档注释
* B:通过javadoc命令生成说明书
* @author(提取作者内容)
* @version(提取版本内容)
* javadoc -d 指定的文件目录 -author -version ArrayTool.java
* @param 参数名称//形式参数的变量名称@return 函数运行完返回的数据