【尚硅谷】第01章:随堂复习与企业真题(Java语言概述)
来源:尚硅谷Java零基础全套视频教程(宋红康2023版,java入门自学必备)
基本都是宋老师发的资料里面的内容,只不过补充几个资料里没直接给出答案的问题的答案。
 不想安装markdown笔记的app所以干脆在这里发一遍。
第01章:随堂复习与企业真题(Java语言概述)
一、随堂复习
1. Java基础全程的学习内容
第1阶段:Java基本语法
> Java概述、关键字、标识符、变量、运算符、流程控制(条件判断、选择结构、循环结构)、IDEA、数组第2阶段:Java面向对象编程
> 类及类的内部成员
> 面向对象的三大特征
> 其它关键字的使用第3阶段:Java语言的高级应用
> 异常处理、多线程、IO流、集合框架、反射、网络编程、新特性、其它常用的API等 
神书:《Java核心技术》(可以做为查阅工具书)、《Effective Java》、《Java编程思想》
2. 软件开发相关内容
2.1 计算机的构成
硬件 + 软件
2.2 软件
软件,即一系列按照特定顺序组织的计算机数据和指令的集合。有系统软件和应用软件之分。
- 系统软件,即操作系统,windows、Mac os 、linux、android、ios
 - 应用软件,即os之上的应用程序。
 
2.3 人机交互方式
- 图形化界面(GUI)
 - 命令行交互方式(CLI) 
- 熟悉常用的dos命令:dir 、 cd 、cd… 、 cd/ cd\ 、md、rd等
 
 
2.4 计算机编程语言
-  
语言的分代:
- 第1代:机器语言
 - 第2代:汇编语言
 - 第3代:高级语言 
- 面向过程的语言:C
 - 面向对象的语言:C++、Java、C#、Python、Go、JavaScript
 
 
 -  
没有“最好”的语言,只有在特定场景下相对来说,最适合的语言而已。
 
3. Java概述
3.1 Java发展史
-  
几个重要的版本:1996年,发布JDK1.0; 里程碑式的版本:JDK5.0、JDK8.0(2014年发布)
 JDK11(LTS)、JDK17(LTS)long term support
 
3.2 Java 之父
詹姆斯·高斯林
3.3 Java具体的平台划分
J2SE —>JavaSE
J2EE ---->JavaEE
J2ME —> JavaME
Java目前主要的应用场景:JavaEE后台开发、Android客户端的开发、大数据的开发
4. Java环境的搭建
- JDK、JRE、JVM三者之间的关系(依次前者包含后者)
 - JDK的下载(官网)
 - JDK的安装 
- 安装jdk8 和 jdk17
 
 - 环境变量的配置(重要)
 
5. HelloWorld的编写和常见问题的解决(重点)
- 第1个程序
 
class HelloChina{public static void main(String[] args){System.out.println("hello,world!!你好,中国!");System.out.print("hello,world!!你好,中国!");System.out.println("123abc");System.out.println(123 + 1);}
}
 
- 测试程序
 
public class HelloJava{public static void main(String[] args){System.out.println("hello");System.out.println(10/0);}
}class HelloShangHai{}class HelloBeijing{} 
- 小结
 
总结:
1. Java程序编写和执行的过程:
步骤1:编写。将Java代码编写在.java结尾的源文件中
步骤2:编译。针对于.java结尾的源文件进行编译操作。 格式:javac 源文件名.java
步骤3:运行。针对于编译后生成的字节码文件,进行解释运行。 格式: java 字节码文件名2. 针对于步骤1的编写进行说明。class HelloChina{public static void main(String[] args){System.out.println("hello,world!!你好,中国!");}
}其中,
① class:关键字,表示"类",后面跟着类名。
② main()方法的格式是固定的。务必记住!表示程序的入口public static void main(String[] args)  如果非要有些变化的话,只能变化String[] args结构。可以写成:方式1:String args[]   方式2:String[] aargs:全程是arguments,简写成args③ Java程序,是严格区分大小写的。④ 从控制台输出数据的操作:
System.out.println() : 输出数据之后,会换行。
System.out.print() : 输出数据之后,不会换行。⑤ 每一行执行语句必须以;结束。3. 针对于步骤2的编译进行说明。① 如果编译不通过。可以考虑的问题:
问题1:查看编译的文件名、文件路径是否书写错误
问题2:查看代码中是否存在语法问题。如果存在,就可能导致编译不通过。② 编译以后,会生成1个或多个字节码文件。每一个字节码文件对应一个Java类,并且字节码文件名与类名相同。4. 针对于步骤3运行进行说明。① 我们是针对于字节码文件对应的Java类进行解释运行的。
要注意区分大小写!② 如果运行不通过。可以考虑的问题:
问题1:查看解释运行的的类名、字节码文件路径是否书写错误
问题2:可能存在运行时异常。(放到第9章中具体讲解)5. 一个源文件中可以声明多个类,但是最多只能有一个类使用public进行声明。
且要求声明为public的类的类名与源文件名相同。
 
6. 注释的使用
/*
这是多行注释。我们可以声明多行注释的信息!1. Java中的注释的种类:
单行注释 、 多行注释 、 文档注释(Java特有)2. 单行注释、多行注释的作用:
① 对程序中的代码进行解释说明
② 对程序进行调试3. 注意:
① 单行注释和多行注释中声明的信息,不参与编译。换句话说,编译以后声明的字节码文件中不包含单行注释和
多行注释中的信息。
② 多行注释不能嵌套使用4. 文档注释:
文档注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。*/
/**
这是我的第一个Java程序。很开森!^_^@author shkstart
@version 1.0*/
public class CommentTest{/**这是main()方法。格式是固定的。(文档注释)*//*这是main()方法。格式是固定的。(多行注释)*/public static void main(String[] args){//这是输出语句System.out.println("hello,world!!");//System.out.println("hello,world!!")}
}
 
7. API文档
8. 练习
- 练习1
 
class PersonalInfo{public static void main(String[] args) {System.out.println("姓名:康师傅");System.out.println(); //换行的操作System.out.println("性别:男");System.out.println("家庭住址:北京程序员聚集地:回龙观");}
} 
- 练习2
 
class StarPrintTest {public static void main(String[] args) {System.out.println("*    *");System.out.println("*\t\t*");System.out.println("*\n\n*");}
} 
二、企业真题
1.一个”.java”源文件中是否可以包括多个类?有什么限制(明*数据)
是!
一个源文件中可以声明多个类,但是最多只能有一个类使用public进行声明。
 且要求声明为public的类的类名与源文件名相同。
2.Java 的优势(阿**巴)
- 跨平台型
 - 安全性高
 - 简单性
 - 高性能
 - 面向对象性
 - 健壮性
(社区繁荣,有大量开源的第三方框架可以使用) 
3.常用的几个命令行操作都有哪些?(至少4个)(北京数字**)
略
- 编译 javac HelloWorld.java
 - 运行 java HelloWorld
 - 查看版本 java -version
 - 文档注释 javadoc -d mydoc -author -version HelloWorld.java
 
4.Java 中是否存在内存溢出、内存泄漏?如何解决?举例说明(拼*多)
存在!
不能举例。(还没讲到)
 程序在执行过程中,已经是不再使用的空间了,但是JVM不认为这是垃圾,比如……
5. 如何看待Java是一门半编译半解释型的语言(携*)

相关文章:
【尚硅谷】第01章:随堂复习与企业真题(Java语言概述)
来源:尚硅谷Java零基础全套视频教程(宋红康2023版,java入门自学必备) 基本都是宋老师发的资料里面的内容,只不过补充几个资料里没直接给出答案的问题的答案。 不想安装markdown笔记的app所以干脆在这里发一遍。 第01章:随堂复习…...
MyBatis的SqlSession理解
SqlSession是Mybatis最重要的构建之一,可以认为Mybatis一系列的配置目的是生成类似JDBC生成的Connection对象的statement对象,这样才能与数据库开启“沟通”,通过SqlSession可以实现增删改查(当然现在更加推荐是使用Mapper接口形式…...
axios 某个接口使用自己独有的完整地址
可以在axios请求中使用完整的URL,而不使用baseURL, 只需将url字段设置为完整的URL即可 import axios from axios;export function getInfo() {return axios({url: http://192.168.3.15:8086/test/messages,method: post}); }直接在url字段中提供了完整的…...
WEB:Web_python_template_injection
背景知识 python模板注入 ssit 题目 打开题目,发现页面提示,翻译为python模板注入 先测试是否存在注入 可以发现被执行了 先查看所有的子类 payload {{[].__class__.__base__.__subclasses__()}} 利用site.Printer的os模块执行命令 payload {{.__…...
【Android安全】Embedded Trace Microcell模块
ETM: Embedded Trace Macrocell, hardware unit responsible to generate hardware instruction trace. ETM模块用于在硬件层面实现instruction trace,可用于辅助逆向分析。 使用教程: https://mcuoneclipse.com/2016/11/05/tutorial-getting-etm-inst…...
修改内核驱动之后-如何给内核打补丁
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言思路步骤1.进入下面路径2.修改文件calibrate.c3.使用git工具生产补丁文件4.移动补丁文件到自己的Linux的recipem目录下总结前言 本文来学习如何使用YOCTO修改Linux内核驱动之后,如何通过打补…...
【javaSE】 类和对象详解
目录 面向对象的初步认知 什么是面向对象 面向对象与面向过程 类定义和使用 简单认识类 类的定义格式 注意事项 练习定义类 定义一个狗类 定义一个学生类 注意事项 类的实例化 什么是实例化 注意事项 类和对象的说明 this引用 为什么要有this引用 什么是this引…...
大数据课程D5——hadoop的Sink
文章作者邮箱:yugongshiyesina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 掌握Sink的HDFS Sink; ⚪ 掌握Sink的Logger Sink; ⚪ 掌握Sink的File Roll Sink; ⚪ 掌握Sink的Null Sink; ⚪ 掌握Si…...
【数据结构】27.移除元素
💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …...
机器学习分布式框架ray运行xgboost实例
Ray是一个开源的分布式计算框架,专门用于构建高性能的机器学习和深度学习应用程序。它的目标是简化分布式计算的复杂性,使得用户能够轻松地将任务并行化并在多台机器上运行,以加速训练和推理的速度。Ray的主要特点包括支持分布式任务执行、Ac…...
C++设计模式笔记
设计模式 如何解决复杂性? 分解 核心思想:分而治之,将大问题分解为多个小问题,将复杂问题分解为多个简单的问题。 抽象 核心思想:从高层次角度讲,人们处理复杂性有一个通用的技术,及抽象。…...
简单聊聊创新与创造力
文章目录 前言一、大脑运行的两种方式1、聚焦模式2、发散模式3、影响想法的因素a、背景知识b、兴趣c、天赋 4、思维固化 二、想法的不可靠1、对想法进行验证2、颠覆性创新,挤牙膏式创新3、为什么模仿这么多 三、更多更多的idea1、个人的方面a、积累不同的背景知识b、…...
使用TensorFlow训练深度学习模型实战(上)
大家好,尽管大多数关于神经网络的文章都强调数学,而TensorFlow文档则强调使用现成数据集进行快速实现,但将这些资源应用于真实世界数据集是很有挑战性的,很难将数学概念和现成数据集与我的具体用例联系起来。本文旨在提供一个实用…...
【Spring】什么是Bean的生命周期及作用域,什么是Spring的执行流程?
博主简介:想进大厂的打工人博主主页:xyk:所属专栏: JavaEE进阶 在前面的播客中讲解了如何从Spring中存取Bean对象,那么本篇我们来讲解Bean对象的生命周期是什么,Bean对象的6种作用域分别是什么,都有哪些区别ÿ…...
立创EDA学习
学习树莓派3B的板子发现有个扩展板比较好,自己最好画一个,反正免费。 学习视频:立创EDA(专业版)电路设计与制作快速入门。 下载专业版,并激活。【分专业版和标准版,专业版也是免费的】 手机…...
清风学习笔记—层次分析法—matlab对判断矩阵的一致性检验
在判断矩阵是否为正互反矩阵这块,我写了两种代码,改进前很麻烦且有错误,改进后简洁多了,改进前的代码还有错误,忽略了对角线的值必须都是1,只考虑了除开对角线的元素相乘为1。 %% 改进前代码 A[3 2 4;1/2 …...
大众安徽内推
大众汽车(安徽)有限公司是大众汽车集团在中国第一家专注于新能源汽车的合资企业,是集团在中国首家拥有全面运营管理权的合资企业,担负着产品研发及数字化研发的重任,将成为集团全球电动出行中心之一。 VW Anhui Offic…...
Meta “地平线世界”移动端应用即将上线,手机快乐元宇宙?
根据海外记者 Janko Roettgers 的报道,Meta 预计很快推出移动版的 VR 元宇宙服务 "地平线世界",这是Meta 长期开发的产品。 根据最新报道,Meta宣布正在研发“地平线世界”的移动版,并表示这一服务已经可以在Quest VR设…...
更省更快更安全的云服务器,一站式集中管理,随时随地远程——站斧云桌面
随着全球化和数字化经济的发展,越来越多的企业开始海外扩张和拓展国际市场。而云服务器作为一种高效、灵活且可靠的IT基础设施方案,已成为出海企业不可或缺的重要工具。这里就为大家介绍云服务器在出海企业中的几个使用场景。 1.全球范围内协同办公 对…...
出现 Try run Maven import with -U flag (force update snapshots) 的解决方法
目录 1. 问题所示2. 原理分析3. 解决方法1. 问题所示 在配置Maven依赖信息的时候,出现如下问题: com.alibaba.nacos:nacos‐client:pom:1.1.3 failed to transfer from http://nexus.hepengju.cn:8081/nexus/content/groups/public/ during a previous attempt. This failu…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...
Linux简单的操作
ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...
