- 博客(20)
- 收藏
- 关注
原创 编写一个go程序HelloWorld
其中main代表包名,package就代表包,表示代码所在的模块(包)。与Java不同的是go语言中的包名可以和目录名不一致。但需要注意的是,同一个目录下的所有go文件的包名需要保持一致。func表示函数,后面mian表示这是一个main函数,也即是程序的主函数,程序的入口。函数内fmt.Println(“需要打印的语句”),表示将双引号中的内容打印到控制台。有其它变成经验的人应该能猜测到它的每一行的作用都是什么,毕竟大体和其它语言都是类似的。像学习其它语言一样,我们的一个程序依然是HelloWorld。
2024-02-06 15:46:10
605
原创 双亲委派机制详解
双亲委派机制(Parent Delegation Model)是Java类加载器(ClassLoader)的一种工作机制,用于保证Java类的唯一性和安全性。
2024-01-23 17:49:58
334
原创 线程池和线程工厂的区别
总体来说,线程池是一种管理和复用线程的机制,而线程工厂则是用于创建线程对象的工具。在实际应用中,线程池通常会使用线程工厂来创建线程,以便进行更灵活的配置和管理。
2024-01-23 17:10:12
581
原创 Java官方创建线程的方式
Java源码中其实明确写了创建线程只有两种方式我们通过源码可以得知,有两种方法创建线程。一个是继承Thread类,一个是实现Runnable,但很多开发者会将Callable和使用线程池创建也算成创建线程的方式。
2024-01-23 16:46:14
677
原创 线程栈为什么要用栈这个数据结构
而运行时数据区有一个模块叫做栈。这个模块存放的是线程的局部变量。而栈这个模块使用的数据类型就是栈,我们来分析一下为什么不使用其它的数据类型。JVM分为三大块,类装载子系统,运行时数据区(内存模型),字节码执行引擎。
2023-12-12 23:49:40
384
原创 JVM运行过程
代码进入Java虚拟机内部的执行流程:首先通过类装载子系统加载代码,将代码加载带java虚拟机的第二块组成部分,运行时数据区,再通过第三块组成部分字节码执行引擎执行运行时数据区中的代码。当运行到方法,会在栈上面给每个方法分配专属的内存区域。javac 命令先把java文件编译成字节码文件,再通过java命令将字节码文件丢进Java虚拟机里面。Java可以跨平台是通过Java虚拟机实现的,我们从官网下载JDK时需要根据系统选择不同的JDK版本。运行时数据区有堆,栈,本地方法栈,方法区(元空间),程序计数器。
2023-12-11 00:33:26
363
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人