1.封装:通过类、方法、访问修饰符,保证代码安全
1)类---封装数据(成员变量)、行为(方法),作为一个整体操作
2)方法---封装功能的实现,隐藏实现的细节
3)访问修饰符---控制访问权限,保证数据安全
2.类:一种数据类型,包含:
1)对象所共有的特征(变量)---静的
2)对象所共有的行为(方法)---动的
3.方法:
1)具有参数时更灵活
2)不需要返回值时,返回值类型设置为void
3)return后的数据类型必须与返回值类型匹配
4.访问修饰符:
1)public,共有的,任何类都可以访问
2)protected,受保护的,本类、子类、同包类可以访问
3)默认,本类、同包类可以访问
4)private,私有的,本类可以访问
5)类只能用public和默认修饰,但是类的成员4种都可以用
5.创建对象后,其成员变量具有默认值,整型变量(byte、short、int、char、long)和浮点型(double、float)默认值为0,boolean型的默认值为false,引用类型的默认值为null
6.成员变量与局部变量的区别:
1)局部变量
-定义在方法中
-没有默认值,必须自行设定初始值
-方法被调用时,存在于栈中,方法执行结束,从栈中清除
2)成员变量
-定义在类中,方法外
-默认有初始值,可以不显式初始化
-类被实例化时(创建对象),存在于堆中,对象被回收后,成员变量失效
7.引用类型变量与基本类型变量的区别:
1)引用类型变量存的是一个指向对象的地址
2)基本类型变量存的是值
3)引用类型变量画“=”,是在指向同一个对象,不会创建新的对象
4)基本类型变量画“=”,是赋值
8.方法的签名:方法名和参数列表
1)一个类中不可以存在方法签名相同的方法
2)在Java中允许方法名相同,参数列表不同的多个方法存在,称之为方法的重载
3)编译器在编译时会根据方法签名来绑定调用的方法
9.构造方法:任何一个类必须有构造方法
1)常常用于初始化成员变量
2)与类同名,没有返回值类型
3)在创造对象时被自动调用
4)若不写构造方法,编译器默认添加一个无参数构造方法(如果写了,就没有默认构造方法)
5)构造方法可以重载
10.this关键字:
1)this指代当前对象
2)用法:
this.成员变量---访问成员变量
this.方法()------访问方法
this()-----------调用构造方法
3)在类中只要用到成员变量就默认有this,在没有歧义的情况下,可以省略
4)在构造方法中,用来初始化成员变量的参数名一般与成员变量名相同,利用代码的可读性,这时的this不能省略
11.编译好的Java程序运行在JVM中,JVM内存分为“堆”、“栈”、“方法区”:
1)堆:存储new出来的对象(包括成员变量),可利用垃圾回收器(gc),不定时回收没有引用指向的对象, 以防止发生内存泄漏(System.gc())
2)栈:存储所有局部变量,调用方法时分配栈帧
3)方法区:存放类的信息(包括方法),Java程序运行时通过类装载器载入类的字节码信息,经过解析后存放在方法区中。方法只有一份,通过this区分对象