JavaSE——学习总结

一、初识Java

运行Java程序

Java是一门半编译型、半解释型语言

先通过javac编译程序把源文件进行编译,编译后生成的.class文件是由字节码组成的,和平台无关、面向JVM的文件,最后启动java虚拟机来运行.class文件,此时JVM会将字节码转换成平台能够理解的形式来运行


JDK、JRE、JVM之间的关系:

JDK = JRE + 开发工具集(如:javac)

JRE = JVM + JavaSE标准类库

二、数据类型与变量

1、字面常量

2、数据类型

  • 基本数据类型:类型及其内存占用
  • 引用数据类型

三、运算符

1、算数运算符

基本四则运算符:加减乘除模

增量运算符:+=、-=、*=、%=

自增自减运算符:++、--

2、关系运算符

六个:==!=<><=>=

3、逻辑运算符(重点)

三个:&&||,运算结果都为boolean类型

&&||、短路求值的性质

4、位运算符(按二进制进行计算)

四个:&|~^,除 是一元运算符,其他都是二元运算符

5、位移运算

三个:<<>>>>>都是二元运算符

6、条件运算符(三目运算符)

表达式1?表达式2:表达式3

四、逻辑程序控制

1、顺序结构

2、分支结构

  • if语句
  • switch语句

3、循环结构

  • while循环
  • break
  • continue
  • for循环
  • do while循环

五、方法的使用

形参与实参的关系:在Java中,实参的值永远都是拷贝到形参中,形参和实参本质是两个实体

方法重载(重要)

递归

六、数组的定义与使用

数组:可以看成是相同元素的一个集合,在内存中是一段连续的地址

数组创建和初始化的方式

二维数组

七、类和对象

关键字:class

大驼峰

类的实例化,关键字:new

this引用

构造方法

局部变量在使用时必须初始化,成员变量会默认初始化,有默认值

就地初始化


封装

访问修饰限定符:private、default、protected、public

包的概念(导入包、自定义包)

static成员

代码块(普通代码块、构造代码块、静态代码块、同步代码块)

内部类(实例内部类、静态内部类、局部内部类、匿名内部类

八、继承和多态

继承:共性抽取、代码复用

关键字:extends、super、final

super和this的区别

各种代码块及构造方法的执行顺序

继承与组合


多态:完成某个行为,不同的对象去完成会产生不同的状态

多态实现条件:

  • 必须在继承体系下
  • 子类必须对父类中方法进行重写
  • 通过父类的引用调用重写的方法

重写

重载与重写的区别

向上转型和向下转型

动态绑定

九、抽象类和接口

抽象类:如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类

关键字:abstract

抽象类的特性

接口:多个类的公共规范,是一种引用数据类型

关键字:interface

接口的特性

Java中不支持多继承,但是一个类可以实现多个接口

Cloneable接口和深浅拷贝

抽象类和接口的区别

Object类:使用Object类可以接收所有类的对象

方法:equals、hashcode、toString

十、String类

字符串构造

方法:equals

StringBuilder 和 StringBuffer

String、StringBuilder、StringBuffer之间的区别

十一、认识异常

异常的体系结构

异常的分类:运行时异常、编译时异常

异常的处理:

        1. 防御式编程(EAFP)

        2. 异常的抛出(throw)

        3. 异常的捕获

                3.1 异常声明throws

                3.2 try-catch捕获并处理

                3.3 finally

异常的处理流程

自定义异常类

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

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

相关文章

目标检测数据集 - 城市道路行驶车辆检测数据集下载「包含VOC、COCO、YOLO三种格式」

​​​数据集介绍&#xff1a;城市道路行驶车辆检测数据集&#xff0c;真实监控场景高质量图片数据&#xff0c;涉及场景丰富&#xff0c;比如城市道路快速行驶车辆、城市道路慢速行驶车辆、城市道路密集行驶车辆、城市道路夜间低光行驶车辆数据等。数据集标注标签划分为 "…

python-字符替换

[题目描述] 给出一个字符串 s 和 q 次操作&#xff0c;每次操作将 s 中的某一个字符a全部替换成字符b&#xff0c;输出 q 次操作后的字符串输入 输入共 q2 行 第一行一个字符串 s 第二行一个正整数 q&#xff0c;表示操作次数 之后 q 行每行“a b”表示把 s 中所有的a替换成b输…

使用kubespray部署k8s生产环境

使用kubespray部署k8s生产环境 系统环境 OS: Static hostname: test Icon name: computer-vm Chassis: vm Machine ID: 22349ac6f9ba406293d0541bcba7c05d Boot ID: 83bb7e5dbf27453c94ff9f1fe88d5f02 Virtualization: vmware Operating System: Ubuntu 22.04.4 LTS Kernel: L…

mac M1下安装PySide2

在M1下装不了PySide2, 是因为PySide2没有arm架构的包 1 先在M1上装qt5 安装qt主要是为了能用里面的Desinger, uic, rcc brew install qt5 我装完的路径在/opt/homebrew/opt/qt5 其中Designer就是用来设计界面的 rcc用resource compiler, 编绎rc资源文件的, 生成对应的py文件…

JZ2440笔记:热插拔驱动

&#xff08;1&#xff09;打印环境变量 vi lib/kobject_uevent.c 208 printk("feng: uevent_helper %s\n",uevent_helper); for(i0;envp[i];i) {printk("envp[%d] %s\n",i,envp[i]); } 使用修改后的uImage启动&#xff0c;测试打印应用程序的环境变量…

Unit8

Unit8 1. lect 选择&#xff0c;收集 collect collector collection collective select selected selection elect election eligible intellect intellectual intelligence neglect negligible negligence 2. long 长 long long for sth length lengthy lengthen be…

echarts legend. icon的展示

默认展示 icon展示circle圆形rect矩形roundRect圆角矩形triangle三角形diamond菱形pin水滴arrow箭头none不显示

Redis位图

简介 在我们平时开发过程中&#xff0c;会有一些bool型数据需要存取&#xff0c;比如用户一年的签到记录&#xff0c;签了是1&#xff0c;没签是0&#xff0c;要记录365天。如果使用普通的key/value&#xff0c;每个用户要记录365个&#xff0c;当用户上亿的时候&#xff0c;需…

资质延期后如何提升风景园林项目的质量

资质延期后&#xff0c;提升风景园林项目的质量是确保企业持续发展和市场竞争力的关键。以下是一些具体的建议&#xff0c;旨在帮助企业实现项目质量的提升&#xff1a; 一、科学规划和设计 注重项目前期调研&#xff1a;在项目开始之前&#xff0c;进行充分的市场调研和现场勘…

数据中心综合解决方案

安科瑞电气股份有限公司 祁洁 acrelqj 一、方案介绍 安科瑞电气紧跟数据中心发展形式&#xff0c;推出数据中心综合解决方案&#xff0c;集成了变配电监测、电源备自投、电气接点测温、智能照明控制、电能质量监测及治理、蓄电池在线监测、精密配电监控、智能母线监控以及消…

重要经济数据对行情的影响有多大?

金融市场上的消息非常多&#xff0c;可以来自不同国家、不同大型企业&#xff0c;也可以由不同机构统计公布&#xff0c;甚至是各国政府或中央银行的发表。在宏观经济层面上&#xff0c;所有政经消息都属于金融市场的风险事件&#xff0c;大多能引起市场波动&#xff0c;因此投…

MySQL里如果有字段是function怎么查询呢?

在MySQL中&#xff0c;字段名通常不会命名为function&#xff0c;因为FUNCTION是MySQL的保留关键字&#xff0c;用于定义存储函数。但是&#xff0c;如果你确实有一个字段名叫做function&#xff08;尽管这通常不是一个好的实践&#xff09;&#xff0c;你仍然可以查询它。你只…

android 开机动画执行流程

android深入了解开机动画 开机动画的种类 1&#xff1a;View绘制 2&#xff1a;逐帧动画&#xff1a;比较主流的方式&#xff0c;一般动画的文件打包成 bootanimation.zip 存储到 /system/media/ 下。一般.zip文件 > 5M 就会有明显的卡顿&#xff0c;所以一般开机动画只有…

Python界面怎么下载

Python界面怎么下载 Python界面&#xff0c;通常指的是Python的集成开发环境&#xff08;IDE&#xff09;或图形用户界面&#xff08;GUI&#xff09;库所创建的窗口界面。对于初学者和开发者来说&#xff0c;选择一个合适的Python界面工具对于提高编程效率至关重要。然而&…

NoSuchModuleError: Can‘t load plugin: sqlalchemy.dialects:clickhouse解决方案

NoSuchModuleError: Cant load plugin: sqlalchemy.dialects:clickhouse解决方案:全面解析 问题概述 当您使用 SQLAlchemy 连接 ClickHouse 数据库时,遇到 NoSuchModuleError: Cant load plugin: sqlalchemy.dialects:clickhouse 错误时,这意味着无法加载 ClickHouse 方言…

正大国际期货:期货交易需要根除的几点习惯

1、交易过多品种。对于期货交易而言&#xff0c;最不靠谱的就是同时操作多个品种。我认为的较合适的品种上限在3-4个&#xff0c;甚至更少为好。我们经常看到的截图&#xff0c;动辄十个甚至数十个品种&#xff0c;而且都盈利&#xff0c;这种截图看看就罢&#xff0c;不必认真…

Python处理时间和日期库之pytime使用详解

概要 在Python编程中,时间和日期处理是一个常见的需求。虽然Python标准库提供了强大的时间和日期处理模块,但对于一些常见的任务,例如自然语言解析时间、简单的日期计算等,标准库的使用相对复杂。pytime库提供了一种简单而直观的方法来处理时间和日期,使得这些任务变得更…

240.搜索二维矩阵

题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,…

2024-06-05 问AI: 介绍一下 SuperCLUE

文心一言 SuperCLUE是一个中文通用大模型综合性评测基准&#xff0c;旨在评估在当前通用大模型大力发展的情况下&#xff0c;中文大模型的效果情况。以下是关于SuperCLUE的详细介绍&#xff1a; 发布时间与背景&#xff1a; SuperCLUE于2023年5月9日正式发布。主要评估中文大…

宏基因组分箱(binning)|1.Metabat实战了解binning

Introduction 宏基因组学是直接从环境样本&#xff08;如土壤、水、肠道内容物等&#xff09;中回收遗传物质并进行研究的学科&#xff0c;无需对个体生物进行分离或培养。这一领域的研究为我们提供了对微生物群落多样性及其功能的深入理解。可以查看我之前写的宏基因组分析流…