Java琐碎知识

Java琐碎知识,第1张

Java琐碎知识

目录

问题1:什么是对象实例化(给一个类赋予对于意义的过程)

问题2:什么叫做面向对象编程语言

问题3:和对象实例化有关的语句

问题4:栈区(stack),堆区(heap),方法区

问题5:对java中引用如何理解


问题1:什么是对象实例化(给一个类赋予对于意义的过程)

   对象:纸上的一个草图,不占用任何空间

   实例化:将纸上的制作出来,实际占用空间

   实例化是指在面向对象的编程过程中,把用类创建的过程称为实例化,是将一个抽象的概念类,具体到该类实物的过程。实例化过程中一般由  类名 对象名  =  new  类名(参数)构成。

问题2:什么叫做面向对象编程语言

面向对象(该让谁来做):把世界描绘成N个有主动性的“活物”之间的交互

面向过程(该怎么做):有一个上帝之手,通过制定一系列的规则来 *** 纵一堆的死物

问题3:和对象实例化有关的语句

  主要有3个部分:1)属性定义时的赋值语句;2)构造代码块中的语句;3)构造方法中的语句

  执行顺序:1)和  2)按照书写顺序执行;前面完成以后,才执行第 3);子类的实例化时,必须要求父类的所有实例化相关语句全部完成之后,才开始执行子类的

问题4:栈区(stack),堆区(heap),方法区

1,java中的栈区和堆区是Java在内存(ram)中存放数据的地方

2,堆区

存储的全部都是对象,每个对象包含一个与之对应的class信息jvm中只有一个堆区,被所有线程共享,不存放基本类型和对象引用,只存放实物的本身。堆区的优势和劣势:优势是可以动态分配内存的大小,生存期间也不必事先告知编译器,java的垃圾收集器会自动拾取这些不在使用的数据。但缺点是要在运行时动态分配存储内存,存取速度比较慢。

3,栈区

  存放方法的局部变量,基本类型的变量区,执行环境上下文, *** 作指令区,线程不共享  方法的某次执行时所需要的数据,以栈帧的形式,存放在栈区

4,方法区

  •   又称为静态存储区,存放class文件和静态数据,线性共享 
  • 问题5:对java中引用如何理解

    引用就是找到对象的线索,存放的不一定是地址。

      

    欢迎分享,转载请注明来源:内存溢出

    原文地址: http://outofmemory.cn/zaji/5709415.html

    (0)
    打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
    上一篇 2022-12-17
    下一篇 2022-12-17

    发表评论

    登录后才能评论

    评论列表(0条)

    保存