当前位置:网站首页 > Java基础 > 正文

java基础知识笔记



1、class 类名必须与文件名一样
  javac Hello.java   - javac命令,编译代码,会生成一个 jvm 运行的 class 文件
  java Hello - java命令,运行代码


2、java运行机制 - java既有编译型特点,也有解释型特点
  高级语言分 2 种:编译型、和解释型
  编译型和解释型的区别就在于执行时机不一样。
  以一本书作比喻:比如中国人L创作了《三体》,美国人M想看,但是M不懂中文,那么M有 2 种方式去读这本书。
  第一种,《三体》直接翻译印制为美文版出书,M要看就去买翻译的美文版这本书,直接看;
  第二种,M请一个翻译官F,F边看边翻译给M。
  经过这 2 种方式,M都可以看完《三体》这本书,但是这 2 种方式各有优缺点:
  第一种方式的缺点,就是比如L修改了一部分《三体》,那么翻译的美文版,就得重新翻译印制成书,M想看就只能再次购买新出的书
  第二种方式的缺点就是M看到后面想再从前面看,那么F也得翻到前面重新翻译给M,并且F如果不翻译了,那么M也看不了了。


3、java程序运行机制


(1)源程序java文件 - 经过java编译器 - 编译为字节码(class文件)
  这个class文件才是真正被执行的文件,所以java程序都会经过一个预编译阶段生成class文件 - 机器语言与java源代码之间的字节码文件
(2)class执行的时候,就会经过一系列处理,走到 JVM虚拟机,jvm虚拟机会将这个class类加入到 JVM 的类装载器 - 之后经过字节码校验器校验是否出错 - 在交给解释器解释给操作系统,解释一步执行一步
  所以Java就是既有java基础知识笔记编译型语言的特点,也有解释型语言的特点。


4、数据类型
  强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
  弱类型语言:如javascript
  java的数据类型分为两大类:基本类型、应用类型

  什么是字节:
  位(bit):是计算机 内部数据 储存的最小单位,是一个八位二进制数
  字节(byte):是计算机 数据处理 的基本单位,用B表示
  1B(字节) = 8 bit(位)
  字符:是指计算机中使用的字母、数字、字和符号
  1bit表示1位,1Byte表示1个字节,1B=8b,1Kb =1024B
5、数据类型问题记录
(1)整数拓展:进制问题 - 二进制(0b开头) 十进制 八进制(0开头) 十六进制(0x开头)

int i = 10; int i2 = 010; // 八进制, 为8 int i3 = 0x10; // 十六进制,为16

(2)浮点数拓展:银行业务,浮点数计算怎么表示
  浮点数的加减乘除会存在问题,因为浮点数是有限的离散的,而有很多数据是无限的,浮点数都会存在舍入误差,它是接近但不等于
  最好完全不使用浮点数进行比较。
  需要使用java内置的类BigDecimal去进行浮点数的计算
(3)字符可以强制转换为数字。
  原因:所有的字符本质还是数字
  编码问题 - Unicode编码表(97 = a)- 2字节 - 65536


6、数据类型转换
  强制转换:(类型)变量名   -   低 -> 高
  自动转换:高 -> 低
注意:
(1)不能对布尔值进行转换
(2)不能把对象类型转为不相干的类型
(3)在把高容量转为低容量的时候,是强制转换;把低容量转为高容量的时候,是自动转换
(4)转换的时候可能存在内存溢出,或者精度丢失问题
注意:
(1)操作比较大的数的时候,注意溢出问题(JDK7新特性,数字之间可以用下划线_分割)


7、字符串连接符的一个小细节问题
比如:a=10,b=20
那么:'' + a + b = '1020',但是:a + b + '' = '30'

  • 上一篇: java基础语言测试
  • 下一篇: java语法的基础
  • 版权声明


    相关文章:

  • java基础语言测试2025-04-29 11:34:04
  • java 基础问题2025-04-29 11:34:04
  • java基础如何学习2025-04-29 11:34:04
  • java基础讲解视频2025-04-29 11:34:04
  • 成都java基础培训2025-04-29 11:34:04
  • java语法的基础2025-04-29 11:34:04
  • 无基础java入门2025-04-29 11:34:04
  • Java开发基础题型2025-04-29 11:34:04
  • java基础求合数2025-04-29 11:34:04
  • java调试基础2025-04-29 11:34:04