Java基础(含部分面试题)

Java基础

学习来源https://www.bilibili.com/video/BV12J41137hu?p=30

标识符

Java所有的组成部分都需要名字。类名、变量名以及方法名凑被称为标识符

关键字

1648430499000

标识符注意点

  • 所有的标识符都应该以字母(A-Z或者a-z),美元符$,或者下划线(_)开始。

  • 首字符之后可以时字母(A-Z或者a-z),美元符$,下划线(_)或数字的任何字符组合。

  • 不能使用关键字作为变量名或者方法名。

  • 标识符是大小写敏感的。

  • 变量名和类名,可以使用中文命名,但一般不建议这样使用,也不建议使用拼音。

数据类型

强类型语言(Java、C、C++)

  • 要求变量的使用要严格符合规定,所有变量都必须先定义后才能和使用。

  • 如果定义一个变量,指定了数据类型,如果不仅过转换,就永远是这个数据类型。

  • 优势:安全性高

  • 缺点:速度慢

弱类型语言(VBScript、JavaScript)

  • 只要不出问题,可以不符合规定

 

Java的数据类型

  • 基本类型(primitive type)

    • 数值类型

      • 整数类型:byte占1字节范围-128~127;short占2字节范围-32768~32767;int(常用)占4个字节范围-2147483648~2147483647(±21亿);long占8个字节范(long类型要在数字后面加个L)围:-9223372036854775808~9223372036854775807

      • 浮点类型:float占4个字节(float类型要在数字后面加个F)double(常用)占8个字节

      • 字符类型:char占2个字节;char只能是一个字符,一个字或者一个字母;且要用单引号''。

    • boolean(布尔值)类型:占1位,其值只有true和false两个

  • 引用类型(reference type)

    • 类:比如字符串(String)

    • 接口

    • 数组

  • 注意:字符串,Sting不是关键字,是一个类

1648432644274

1648435553944

扩展及面试问题

  • 整数

    • 默认十进制,二进制0b开头,八进制0开头,十六进制0x开头;

    • println打印输出会自动换行,print打印输出不会换行。

1648436318580

 

  • 浮点数扩展

    • 银行面试题--银行业务不能用浮点数计算,需要使用BigDecimal类

    • 浮点数并不精确

1648437693165

 

  • 字符扩展

    • 所有字符的本质还是数字,由Unicode编码表对应

    • Unicode表为16进制,官方写法\u0000----\uFFFF,对应数字转为10进制,即有截图结果。\u0061中61为16进制,对应为10进制97,对应a。

1648438853916

 

  • 转义字符

    • \t 制表符

    • \n 换行符

    • \ ....

1648450745931

  • 布尔值扩展

1648450762432

类型转换

运算中,不同类型的数据先转化为同一类型,然后进行运算。

小数优先级大于整数

1648451373707

强制类型转换

高转低,需要强制转换

自动类型转换

低转高,自动转换

转换时可能存在溢出问题与精度问题

1648452463395

1648453227102

变量

变量实质也是内存地址,其位置是固定的,只是其中的值不确定

Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域

不建议一行同时定义多个变量

1648453768614

变量作用域

1648454203894

1648455563047

常量

1648455607976

1648455984697

1648456134473

运算符

基本运算符

1648456391382

%为取余数,又称模运算

等于用两个等号==

不等于用!=

1648456931346

1648457216942

  • 如果运算中,有一个是long(且无更高的变量类型),则最终结果为long

  • 如果运算中,有一个是double,则最终结果为double。

  • 如果运算中,均未超过long且不含long,则结果默认为int。

1648457678231

自加、自减运算符

1648524416991

1648524688784

  • 注意:Java中^表示异或运算,而非幂运算

 

逻辑运算符、位运算符

1648525688152

1648527395290

1648528754043

1648528825968

  • 乘2左移1位,乘4左移2位,乘8左移3位,乘16左移4位

三元运算符及小结

1648528982071

1648529721430

优先级

  • 加括号弄明白,不影响代码

 

包机制

  • 本质是文件夹

1648530455948

  • 尽量不要让包里的名字重复

1648531234562

1648531321954

 

JavaDoc

1648531861278

生成JavaDoc文档

通过命令行 javadoc Java文件

1648532612374

1648533245307

1648533345222

之后通过文件路径的形式,进入Dos界面

 

1648533043138

  • -encoding UTF-8 -charset UTF-8,是为了使“路径中的中文”和“生成文件后产生的乱码”,正常显示

  • Doc.java,生成文件

语句执行后,会在源文件生成一些网页文件,可以点开,看到完整的编辑的文字等显示

1648533266175

 

使用IDEA生成JavaDoc文档

参考https://blog.csdn.net/qq_42498502/article/details/90078972

 

posted @ 2022-03-28 15:04  尘世红叶  阅读(48)  评论(0)    收藏  举报