Java基础总结

时间:2022-05-16 17:53:09   收藏:0   阅读:13

JAVA基础总结

1. 基础语法

数据类型


基本数据类型:

整数:byte short int long

浮点数:float double

字符:char

布尔值:boolean


引用数据类型:

类 接口 数组

其他

类型转换:

自动类型转换:低转高

强制类型转换:高转低

 

变量和常量:

变量:

type varName [=value]

作用域:类变量 实例变量 局部变量

常量:

final MAX_A=10;

运算符:

算术运算符 赋值运算符 关系运算符 逻辑运算符 条件运算符 ...

 

包机制:域名倒写 package import

 

JavaDoc : Jdk帮助文档 Javadoc

 

2. 流程控制

Scanner

用户交互System in

顺序结构

程序默认的自上而下执行的结构

选择结构

if单选择

if-else双选择

if-else if-else 多选择

switch:

1 支持string类型

2 case穿透现象

3 break

4 default

循环结构

while 避免死循环

do while

for

增强for循环

break&continue

break:跳出循环

continue:终止当次循环

return: 结束方法运行

3. 方法

方法定义

修饰符 方法名 返回值

方法调用

类名方法 对象方法

方法重载

名字相同,参数列表不同

命令行传参

给main方法传递参数

可变长参数

必须放在最后一个参数

递归(面试重点)

自己调用自己 给自己一个出口

4. 数组

数组的定义:

1 new int[5]

2 {1,2,3,4,5}

必须为同一类型

数组的使用:

通过下标拿到值

异常 ArrayindexoutoBounds

增强for循环遍历

二维数组:

int[] []

Arrays类

排序算法:

冒泡排序 选择排序 插入排序 快速排序...

5. 面向对象

类与对象

类是对象的抽象:模板class

对象是类的具体

构造方法

构造的重载 默认无参构造 若定义了有参构造 就必须再加一个无参构造

new对象

栈存放引用 堆存放具体对象

封装

属性私有 get set...

继承

extends object 子类拥有父类全部特性 方法重写 this super

Java是单继承 只能继承一个父类

多态

父类引用指向子类对象

Person person = new Student();

instance of 关键 如果匹配 可以进行类型之间的转换

修饰符

public protected private static final abstract

接口

interface

约束 只能用定义方法名

子类实现接口 必须重写其中的方法

只有一个方法的接口叫做函数式接口 可以用lambda表达式简化

接口比抽象类更抽象

一个类可以实现多个接口

内部类

局部内部类

静态内部类

匿名内部类(重点)

6. 异常

Throwable

exception:运行时异常

error: JVM错误

五个关键字

try{} catch{} finally{} throw 手动抛出异常 throws 方法抛出异常

自定义异常

继承exception类

7. 常用类

Object类

hashcode toString clone getclass notify wait equals

Math类

常见的数学运算

Random类

生成随机数

File类

创建 查看 修改 删除文件

Date类

Date SimpleDateFormat(yyyy-MM-dd HH: mm: ss) Calender

String类

不可变性final 操作量少

StringBuffer类

可变长 append() 多线程数据量大 效率低 不安全

StringBuilder类

可变长 单线程数据量大 效率高 不安全

8. 集合框架

Collection

List(有序可重复): ArrayList LinkedList Vector Stack

Set(无序不可重复):Hashset TreeSet

Map

HashMap(重点 面试高频问点)

TreeMap

9. IO流

字节流

输入:InputStream

输出:OutputStream

字符流

Reader Writer

处理流

butter

butterInputStream butterOutputStream

butterReader butterWriter

data

DataInputStream DataOutputStream

转换

InputStreamReader OutputStreamWriter

Filter过滤

四个

print

PrintWriter

PrintStream

节点流(用的不多)

CharArrayReader Writer InputStream OutputStream

StringReader Writer

pipe(管道) PipedOutputStream

File..

序列化

反序列化

Serializable

transient(透明的)

10. 多线程

进程和线程

run() start()

线程创建的方式

Thread start0,本地方法 java无权调用 交给底层的c处理

Runnable 函数式接口 lambda

Callable 可以有返回值

静态代理

new Thread(Runnable).start();

lambda表达式

函数式编程

避免内部定义过多

new Thread (()->{System.out.printIn();}).start();

线程的状态

新建状态 就绪 运行 阻塞 死亡

常用的方法

sleep join yield isLive start setPriority interrupt

线程同步

多个对象操作同一个资源(并发问题)

队列+锁

Synchronzied: 同步方法 同步代码块 死锁

Lock(优先级高)

线程通信

缓冲区:消息队列

标志位:红绿灯

wait();

notify();

线程池

池化技术 池的大小 最大连接数 保持时间

11. 网络编程

IP

端口 Socket编程

TCP

三次握手 四次挥手 面向连接

UDP

无连接 Packet

其他

URL

初识Tomcat

聊天通信 文件上传

12. GUI(可选)

AWT

Frame 监听事件

Swing

文本框 标签 按钮...

13. 注解和反射

注解

元注解 内置注解 自定义注解 反射读取注解

反射

Class 类加载机制 Method Field Construct 性能分析...

单例模式的探究

需要单独了解

 

原文:https://www.cnblogs.com/fuchen-com/p/15312874.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!