需要重拾Java,用到笔记的时候到了!天啊,笔记还是得上传啊,之前因为gitee不能和typora一起用图床了,不上传笔记了,因为找图片太麻烦了,前两天电脑突然打不开了要重装,本来还是自信满满我的笔记和代码都有备份,今天找之前的java笔记就没了,因为之前正好有段时间文件保存的位置很乱,还好之前有上传CSDN过,还能看!因为完全忘记了,在这篇里补上了重看笔记时产生的疑问,之前那篇有些许错别字,不太影响阅读的~
以下是问题,参考文章和自己的总结:
java se ee区别:
什么是javaEE、javaSE、javaME,这三者区别是什么?_javase javaee javame_时光成梦的博客-CSDN博客
SE是java的基石【面向对象、多线程、IO流这种基础的东西】,EE是规范(框架)【serclet、jsp、spring、mybatis这种,用于开发B/S框架软件,JavaEE 是 Java 应用最广泛的部分】,ME为嵌入式设备提供JAVA语言平台。
Java jdk jre vim区别:
浅谈JDK、JRE、JVM区别与联系_jdk jre jvm三者关系-CSDN博客
JDK是 Java 语言的软件开发工具包(SDK)。在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre。
JDK(Java Development Kit) 是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。JDK是用于java程序的开发,而jre则是只能运行class而没有编译的功能。
bin:最主要的是编译器(javac.exe)
include:java和JVM交互用的头文件
lib:类库
jre:java运行环境
JRE(Java Runtime Environment,Java运行环境),包含JVM标准实现及Java核心类库。JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器)光有JVM还不能成class的 执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。 (jre里有运行.class的java.exe)
JVM(Java Virtual Machine),即java虚拟机, java运行时的环境,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。
联系:JVM不能单独搞定class的执行,解释class的时候JVM需要调用解释所需要的类库lib。在JDK下面的的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。JVM+Lib=JRE。总体来说就是,我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,服务器托管网映射到CPU指令集或OS的系统调用。
区别:JDK有javac.exe而JRE里面没有,javac指令是用来将java文件编译成class文件的,这是开发者需要的,而用户(只需要运行的人)是不需要的。JDK还有jar.exe, javadoc.exe等等用于开发的可执行指令文件。JVM并不代表就可以执行class了,JVM执行.class还需要JRE下的lib类库的支持,尤其是rt.jar。
数据赋值时数值末尾的字母
java double 赋值语句_Java中float、double、long类型变量赋值添加f、d、L尾缀问题-CSDN博客
添加尾缀说明,最好加上,例如:整数赋值给float,不加尾缀会先默认int然后进行类型转换,可能造成数据丢失。而且有时会直接报错。
数据类型中,基本类型和引用类型之间的区别:
一篇文章带你搞定 Java 基本数据类型和引用数据类服务器托管网型的区别_基本数据类型和引用数据类型区别-CSDN博客
基本数据类型只有8种:整数、浮点、字符、布尔;
①整数类型:long、int、short、byte
②浮点类型:float、double
③字符类型:char
④布尔类型:boolean
引用类型:非常多,大致包括:类、 接口类型、 数组类型、 枚举类型、 注解类型、 字符串型
例如,String类型就是引用类型,还有Double,Byte,Long,Float,Char,Boolean,Short(注意这里和基本类型相比首字母是大写)。简单来说,所有的非基本数据类型都是引用数据类型。
java中的基本数据类型一定存储在栈中的,这句话是错的!
引用数据类型是基本数据类型的包装类
一切的引用数据类型都可以使用Objec进行接收
我们将基本数据类型转化为引用数据类型的过程叫做装箱,相应的,我们把从引用数据类型转化为基本数据类型的过程叫做拆箱
!=instanceof什么意思
Java instanceof用法详解-CSDN博客
instanceof是Java中的二元运算符,左边是对象,右边是类;当对象是右边类或子类所创建对象时,返回true;否则,返回false。
其中对比两者的引用需要有继承关系,最终结果的判断依据看的是指向的实际类型,是true则两者是相同的或者子类关系。
无法新建包
将src改为source root就可以新建了,相当于一个包更便于管理代码。
如何生成自己的帮助文档
IDEA创建类时添加类注释,已有的类补充类注释(详细)_idea 类注释-CSDN博客
IDEA创建类时添加类注释,已有的类补充类注释(详细)_idea 类注释-CSDN博客
switch、case的穿透现象
就是不break就会继续执行下去,一般default只会在case没有匹配成功才运行。
JAVA中的形参与实参
深入理解函数的参数——实际参数(实参)和形式参数(形参)_函数实参-CSDN博客
形参:真实传给函数的,调用时括号里的
实参:函数括号内的变量
函数的实参和形参分别储存在不同的地址中,形参的改变并不会改变实参中的数值。因为形参调用的是相应的地址中的数据,而不能调用实参地址中的数据。
形参实例化之后其实相当于实参的一份临时拷贝。
类之间的继承、依赖、组合、聚合
方法的重写,override
父类的引用可以指向子类,static的方法的调用只和左边,也就是定义的数据类型有关,和new的是什么没有什么关系,因为static已经提前加载过来了。而不是static的方法和右边的实例有关,也就是调用对象的方法,方法没有被static那样提前载入,而是实例化后才有(这才是方法的重写,方法的重写和静态无关)。
需要重写的原因:父类的功能,子类不一定都需要或者不一定满足。
内部类
static的方法和右边的实例有关,也就是调用对象的方法,方法没有被static那样提前载入,而是实例化后才有(这才是方法的重写,方法的重写和静态无关)。
需要重写的原因:父类的功能,子类不一定都需要或者不一定满足。
内部类
尤其是匿名内部类,再看当时的视频吧,看一下代码就理解了,好像多线程那里会用到。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
MySQL 的权限系统是用于控制用户对数据库和表的访问权限的重要组成部分。MySQL 的权限主要包括全局权限和数据库权限两个层次,每个层次又分为多个具体权限。以下是 MySQL 的一些常见权限和配置方法: 全局权限: ALL PRIVILEGES: 允许执行所…