JAVASE总结一

1、

2、引用也可以是成员变量(实例变量),也可以是局部变量;引用数据类型,引用,

我们是通过引用去访问JVM堆内存当中的java对象,引用保存了java对象的内存地址,指向了JVM堆内存当中的java对象。 

3、局部变量在栈内存中存储;

4、成员变量中的实例变量在jvm堆内存的java对象内部存储,实例变量是一个对象一份,一百个对象有一百份;

5、静态变量存储在方法区中

6、在类体当中,方法体之外定义的变量被称为"成员变量",成员变量若没有赋值,系统赋默认值:一切向0看齐:

7、访问堆内存只能通过引用去访问; 我们只能通过引用去访问jvm堆内存当中,java对象内部的实例变量

8、java语言中所有的class都属于引用数据类型,类一定是标识符,类属于引用数据类型

9、类实例化形成对象,具有共同特征的对象抽象总结形成的模板叫类

10、new运算符在jvm堆内存中开辟的内存空间叫做对象;使用new运算符一定会在堆内存中开辟内存空间;new运算符创建的java对象存储在堆内存当中。

11、方法的代码片段以及整个类的代码片段都被存储到方法区内存当中,在类加载的时候,这些代码片段会被载入。

* 栈内存:方法代码片段在执行的时候,在栈内存中分配该方法运行时所需的内存空间,方法执行结束后,该方法所属的内存空间将会被释放

* 堆内存:new运算符创建的对象在堆内存中存储

* 方法区内存:主要是存储字节码代码片段。

12、三块内存当中变化最频繁的是栈内存,最先有数据的是方法区内存,垃圾回收器主要针对的是堆内存。

13、垃圾回收器【自动垃圾回收机制、GC机制】什么时候会考虑将某个java对象的内存回收呢?

*当堆内存当中的java对象成为垃圾数据的时候,会被垃圾回收器回收。

*什么时候堆内存中的java对象会变成垃圾呢?

        没有更多的引用指向它的时候。

        这个对象无法被访问,因为访问对象只能通过引用的方式访问。

14、封装的步骤:

1、所有属性私有化,使用private关键字进行修饰,private表示私有的,修饰的所有数据只能在本类中访问

  2、对外提供简单入口:比如说被private修饰的成员变量,在其他类中只能通过getXxx/setXxx方法来访问,目的是提高程序的安全性

                · 想修改实例变量,调用set方法

                · 想读取实例变量,调用get方法

15、Private关键字:

        private可以修饰一个类中的成员变量,也可以修饰成员方法。被private修饰的成员变量或者是成员方法只能在本类中访问,超出本类范围,只能间接访问,比如说被private修饰的成员变量,在其他类中只能通过getXxx/setXxx方法来访问,目的是提高程序的安全性。        

16、关于构造方法:

·  构造方法的语法结构:

  [修饰符列表] 构造方法名(形式参数列表){

    构造方法体;

  }

·  普通方法的语法结构:

  [修饰符列表] 返回值类型 方法名(形式参数列表){

    方法体;

  }

·  对于构造方法来说,"返回值类型"不需要指定,并且也不能写void,只要写上void,那么这个方法就成为普通方法了。

·  对于构造方法来说,构造方法的方法名必须和类名保持一致。

17、构造方法的作用?

        构造方法存在的意义是,通过构造方法的调用,可以创建对象。

18、构造方法应该怎么调用?

        ·普通方法是这样调用的:方法修饰符中有static的时候:类名.方法名(实参列表)、方法名(实参列表);方法修饰符列表中没有static的时候:引用.方法名(实参列表)

        ·new构造方法名(实参列表)

19、构造方法调用执行之后,有返回值吗?

        每一个构造方法实际上执行结束之后都有返回值,但是这个"return 值;"这样的语句不需要写。构造方法结束的时候java程序自动返回值。并且返回值类型是构造方法所在类的类型。由于构造方法的返回值类型就是类本身,所以返回值类型不需要编写。

20、· 当一个类中没有定义任何构造方法的话,系统默认给该类提供一个无参数的构造方法,这个构造方法被称为缺省构造器。        

        · 当一个类显示的将构造方法定义出来了,那么系统则不再默认为这个类提供缺省构造器。

         开发中手动的为当前类提供无参数构造方法 ,因为无参数构造太常见:

                

                                 

21、构造方法支持重载机制,在一个类当中编写多个构造方法,这多个构造方法显然已构成方法重载机制(方法名相同,参数列表不同),不关注修饰符列表和返回值类型:​​​​​​​

        ​​​​​​​        

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/17345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ESP32 - Micropython ESP-IDF 双线教程 脉宽调制(PWM)(1)

ESP32 - Micropython ESP-IDF 双线教程 脉宽调制(PWM) PWM 的基本原理PWM 的应用PWM 的优点PWM 的实现方式ESP32-micropython 中的 PWM 功能使用 micropython 控制 PWM 的代码示例代码介绍 ESP32-IDF 中的 PWM 功能1. 初始化配置函数2. 引脚绑定函数3. 占…

常见算法200个(5):快速排序(快排)

JS实现快速排序 1.快速排序思路: 选择数组中的一个值作为基准,将数组中小于该值的数置于该数之前,大于该值的数置于该数之后,接着对该数前后的两个数组进行重复操作直至排序完成。 2.代码实现: function quick(arr)…

使用 Snort 进行入侵检测

使用 Snort 进行入侵检测 Snort 是一种流行的开源入侵检测系统。您可以在http://www.snort.org/上获取它。Snort 分析流量并尝试检测和记录可疑活动。Snort 还能够根据其所做的分析发送警报。 Snort 安装 在本课中,我们将从源代码安装。此外,我们不会安…

2024 前端面试每日1小时

三日 1. 如何理解Vue的模板编译原理 Vue的模板编译实际就是将模板字符串通过解析、优化和代码生成等步骤转换为渲染函数的过程。这个过程中,AST扮演了非常重要的角色,它用树形结构描述了模板的内容和结构,是编译过程的核心数据结构&#xff…

MySQL——适合不适合创建索引的情况

那些情况适合创建索引 1、字段的数值具有唯一性的限制 索引本身可以起到约束的作用,比如唯一索引、主键索引都是可以起到唯一性约束的,因此在我们的数据表中,如果某个字段是唯一性的,就可以直接创建唯一性索引,或者主…

Nodejs 爬虫 案例

1.安装: npm install cheerio npm install axios2.介绍: 2.1 cheerio 特点和用途描述: HTML解析和操作:Cheerio 可以将 HTML 字符串加载到内存中,并将其转换为一个可操作的 DOM 树结构,从而可以方便地对…

AURIX TC3xx单片机介绍-启动过程介绍1

从各个域控制器硬件解决方案来看,MPU可能来自多个供应商,有瑞萨,有NXP等,但对于MCU来说,基本都采用英飞凌TC3xx。 今天我们就来看一下TC3xx的启动过程,主要包含如下内容: uC上电过程中,会经过一个上电时序,从复位状态“脱离”出来;Boot Firmware是复位后第一个执行的…

使用 Effect 同步-09

有些组件需要与外部系统同步。例如,你可能希望根据 React state 控制非 React 组件、设置服务器连接或在组件出现在屏幕上时发送分析日志。Effects 会在渲染后运行一些代码,以便可以将组件与 React 之外的某些系统同步。 简单理解,就是需要操…

Python实现对Word文档内容出现“重复标题”进行自动去重(4)

前言 本文是该专栏的第4篇,后面会持续分享Python办公自动化干货知识,记得关注。 在本专栏上一篇文章《Python实现对Word文档内容出现“重复标题”进行自动去重(3)》中,笔者有详细介绍使用python对word文档内容的目标文本进行自动去重。只不过本文要介绍的“去重方法”与上…

计算机专业必考之计算机指令设计格式

计算机指令设计格式 例题: 1.设相对寻址的转移指令占3个字节,第一字节为操作码,第二,第三字节为相对偏移量, 数据在存储器以低地址为字地址的存放方式。 每当CPU从存储器取出一个字节时候,自动完成&…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-24.1,2 SPI驱动实验-SPI协议介绍

前言: 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM(MX6U)裸机篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

计算机组成原理易混淆知识点总结(持续更新)

目录 1.机器字长,存储字长与指令字长 2.指令周期,机器周期,时钟周期 3.CPI,IPS,MIPS 4.翻译程序和汇编程序 5.计算机体系结构和计算机组成的区别和联系 6.基准程序执行得越快说明机器的性能越好吗? 1.机器字长,存储字长与指令字长 不同的机器三者…

AI智能体|扣子Coze文生图功能接入微信公众号

大家好,我是无界生长。 AI智能体|扣子Coze文生图功能接入微信公众号本文分享了如何将Coze平台的文生图功能接入微信公众号的详细操作流程,包括创建图像流、创建并配置Bot、设置提示词和开场白、调试、发布等步骤。如果看完还没学会的话&…

网页图片加载慢的求解指南

网页/图片加载慢的求解指南 一、前言与问题描述 今天刚换上华为的HUAWEI AX3 Pro New,连上WIFI后测速虽然比平时慢,但是也不算太离谱,如下图所示: 估计读者们有也和作者一样,还没意识到事情的严重性😁。 …

08Django项目--用户管理系统--查(前后端)

对应视频链接点击直达 TOC 一些朋友加我Q反馈,希望有每个阶段的完整项目代码,那从今天开始,我会上传完整的项目代码。 用户管理,简而言之就是用户的增删改查。 08项目点击下载,可直接运行(含数据库&…

PHP框架 Laravel

现在因为公司需求,需要新开一个Laravel框架的项目,毫无疑问,我又被借调过去了,最近老是被借调,有点阴郁,不过反观来看,这也是好事,又可以复习和巩固一下自己的知识点,接下…

大数据开发面试题【Spark篇】

115、Spark的任务执行流程 driver和executor,结构式一主多从模式, driver:spark的驱动节点,用于执行spark任务中的main方法,负责实际代码的执行工作;主要负责:将代码逻辑转换为任务、在executo…

编译qt5.15.2(mac/windows)的mysql驱动(附带编译好的文件)

文章目录 0 背景1 编译过程2 福利 0 背景 因为需要连接到mysql数据库,所以需要连mysql驱动。 1 编译过程 1,打开文件/Users/mac/Qt5.14.2/5.14.2/Src/qtbase/src/plugins/sqldrivers/sqldrivers.pro,注释掉QMAKE_USE mysql; 如…

国产【Jetson Xavier NX】——从裸机到深度学习开发环境配置

1、设置系统从固态硬盘启动 英伟达官方NX出厂是直接将SD卡(64/128G)烧录系统作为系统盘使用,国产NX出厂是将系统配置在8G内存中,在后续使用中需配置大量开发包,故将系统设置为从固态硬盘启动。 参考链接 https://blo…

vue3中使用svg图标

安装依赖 npm i vite-plugin-svg-icons -D vite.config.ts中添加配置 主要为指定svg图标存放路径以及命名方式 import { defineConfig } from vite import vue from vitejs/plugin-vue import { createSvgIconsPlugin } from vite-plugin-svg-icons import path from path;…