面向对象(OOP:面向对象的编程实现)

三大特征

-封装:把相关的数据封装成一个“类"组件
-继承:子类自动共享父类属性和方法,这是类间的关系
-多态:增强软件的灵活性和复用性

类和对象

通过关键字class创建类,关键字new创建对象。

对象在内存中的存储

JAVA把内存分为5大区域:方法区、虚拟机栈、本地方法栈、堆和程序计数器。

java根据存在的json对象创建新对象 java对象在哪个储存域创建_子类

1. 一般来说,局部变量存在栈中,方法执行完毕内存就释放
2. 对象存在堆中,对象不再被使用时,内存才会被释放
3. 每个堆内存的元素都有地址值
4. 对象中的属性都是有默认值的

java根据存在的json对象创建新对象 java对象在哪个储存域创建_构造方法_02

封装

概念:隐藏对象的属性和实现细节,仅对外提供公共的访问方式。
好处:提高安全性和复用性
private:
是一个权限修饰符,用于修饰成员变量和成员方法,被修饰的只能在本类中进行访问,要想修改只能对外提供公共的get和set方法。

构造方法

构造方法是一种特殊的方法,通过构造方法可以new出来一个类对象。构造方法可以重载。
一般有无参和有参构造方法
修饰符 类名(【参数】){
}

代码块

运行先后顺序:静态代码块>构造代码块>局部代码块

访问控制符

修饰范围大小:
public>protected>defualt>private

继承

继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并扩展自己的能力。
特点:

1.使用extends关键字
2.只支持单继承
3.继承具有传递性
4.父类私有成员不能继承
5.多用于功能的修改,子类可以拥有父类功能的同时,进行功能拓展

super关键字:
1.通过super关键字可以调用父类的内容。
2.super代表父类的一个引用对象
3.如果用,必须出现在调用位置的第一行

方法的重写

1.父类的私有方法不能被重写
2.子类重写父类方法时,修饰符要大于等于父类的访问修饰符的权限