Java基础 | 关于面向对象三大特征与内存回收

Posted Hdparm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础 | 关于面向对象三大特征与内存回收相关的知识,希望对你有一定的参考价值。

面向对象有三大特点:封装、继承、多态。(如果要回答四个,可加上抽象性这一特点)

Java基础

1.Java的继承性:

继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表

述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。

新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新

类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可

以修改或增加新的方法使之更适合特殊的需要。  

2.Java的封装性:

封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象

计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,

这些对象通过一个受保护的接口访问其他对象。  

3.Java的多态性:

多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和

包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的

解决了应用程序函数同名问题。  

4.Java的抽象性:

抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前

目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时

不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。

​分配:由 JVM 自动为其分配相应的内存空间  

5.Java的垃圾回收

释放:由 JVM 提供垃圾回收机制自动的释放内存空间  

垃圾回收机制(GC:Garbage Collection):将垃圾对象所占用的堆内存进行回收。

Java 的垃圾回收机制是 JVM 提供的能力,由单独的系统级垃圾回收线程在空闲

时间以不定时的方式动态回收。  

垃圾对象:不再被任何引用指向的对象

public class TestGC 
public static void main(String[] args)throws Exception
for(int i=0; i<10; i++)
MyClass m = new MyClass();//这里本次循环完,本次创建的对象就成为垃圾了
System.out.println("创建第" + (i+1) + "的对象:" + m);


//通知垃圾回收机制来收集垃圾
System.gc();

//为了延缓程序结束
for(int i=0; i<10; i++)
Thread.sleep(1);
System.out.println("程序在继续....");


class MyClass
//这个方法是垃圾回收机制在回收它的对象时,自动调用,理解成对象留临终遗言的方法
public void finalize()
System.out.println("轻轻的我走了.....");

注意:调用了 System.gc();或 Runtime.getRuntime().gc();后不是立刻执行垃圾回收,该调用并不会立刻启动垃圾回收机制开始回收,但会加快垃圾回收机制的运行。

Java基础

这个方法是垃圾回收机制在回收它的对象时,自动调用,理解成对象留临终遗言的方法。



参考资料:

1.​​https://www.javatpoint.com/abstract-class-in-java​

以上是关于Java基础 | 关于面向对象三大特征与内存回收的主要内容,如果未能解决你的问题,请参考以下文章

Java基础——面向对象三大特征(继承封装多态)

java面向对象的特征都有哪些方面

java基础面向对象三大特征:封装

java基础面向对象三大特征:封装

关于Java中面向对象章节IO 流中的重点基础知识。

Java基础之面向对象