首页 > 编程语言 >Java 基础知识汇总

Java 基础知识汇总

时间:2024-11-24 13:22:15浏览次数:6  
标签:类型转换 反射 Java 数据类型 汇总 基础知识 运算符 线程 注解

Java 基础知识汇总

java语言初识:
java诞生:1995(JavaSE,javaME(adnroid),javeEE
JDK:开发工具包,配置环境变量
JRE:运行环境
基础语法:
注释:单行注释//
多行注释://
文档注释:/
*/ javadoc 生成帮助文档
表示符:关键字
数据类型:
8大基本数据类型:
整数:byte 1字节,short 2,int 4,long 8,0b二进制,0x十六进制,0八进制
浮点型:float 4,double 8,bigdecimal
字符:char 2,ascii,utf-8,unicode,\b,\t
布尔型:boolearn 1位
引用数据类型:

接口
数组
类型转换:
自动类型转换:由低转高
强制类型转换:高转低
变量和常量:
type name=value;
作用域:类变量,实例变量,局部变量
常量:final max_1=10;
命名规范:1.见名知意
驼峰命名变量,方法,不要使用拼音命名
运算符:
算术运算符:
赋值运算符:=
关系运算符:
逻辑运算符:
位运算符:
条件运算符:?:
扩展运算符:+= -=
包机制:
域名倒下
防止命名冲突
package,import
JavaDoc:JDK帮助文档

流程控制:
顺序结构
选择结构:if ,if-else,if-else if-else,switch case,break,default
循环接口:while,do--whie,for,
break:跳出循环
continue:终止当此循环
return::结束方法的运行

面向对象:
类与对象
构造方法:如手动定义了有参构造需手动加一个无参的构造函数
new对象:栈存引用,堆存放具体的对象
封装:属性私有;get,set
继承:extends,object,子类拥有父类的全部特性,方法重写,this,super
多态:
修饰符:public

常用类:
Object:hashcode(),toString(),clone(),getClass(),notify(),wait(),equals()
Math类:常用的数学运算
Random类:生成随机数,UUID
File类:创建文件,查看文件,修改文件,删除文件
包装类:自动装箱和拆箱
Date类:
Date
SimpleDateFormat: yyyy-MM-dd HH:mm:ss
Calendar 建议使用
String类:不可变性final,操作量较少时使用
StringBuffer:可变长,append(),多线程数据量大时使用,效率低,安全
StringBuilder:可变长,单线程数据量大时使用,效率高,不安全

集合框架:
Collection:
list(有序可重复):
ArrayLis常用t:add,remove,contains,size
LinkedList:addFirst,push,pop,getFirst,getLast,removeFirst,addFirst
Vector
Stack
set(无序不可重复):
HashSet 常用
TreeSet
iterator迭代器
Map:
HashMap(重点,高频):
jdk1.7:数组+链表
jdk1.8: hash表=数组+链表+红黑树
TreeMap:
Collections工具类
泛型:约束,避免类型转换之间的问题

IO流:
字节流:
输出:OutputStream
输入:InputStream

   字符流:
           Reader
       Wirter
节点流:
       charArrayReader,writer
       StringReader,writer   处理中文
       pipOutputStream
       File
   处理流:
           buffer:
             bufferInputStream
	     bufferOutputStream
	     bufferReader
	     bufferwriter
       data:
             DataInputStream
	     DataOutputStream
       转换流:
             inputStreamReader
	     OutputStreamWriter
       Fiter:
       	     FilterInputStream
	     FilterOutputStream
	     FilterReader
	     Filterwriter
       Print:
             PrintWriter
	     PrintStream
       序列化:反序列化,Serializable

多线程:
进程,线程
run(),start()
线程的创建方式:
Thread: start0 本地方法,java无权调用,交给底层的c处理,private native void start0()
Runnable:函数式接口,lambada:->{System.out.print("hello")}
Callable:可以有返回值
静态代理:new Thread(Runnable).start()
lambda表达式:
函数式变成
避免内部类定义过多
线程状态:创建,就绪,运行,阻塞,死亡
常用方法:sleep
join
jield
isLive
start
setPriority
interrupt
线程同步:
多个对象操作同一个资源,并发
队列+锁
Synchronized:同步方法,同步代码快
第一个线程进来拿到锁,后面排队
死锁:2个线程抱着对方的锁,互斥,请求与保持,循环等待
Lock:
lock
trylock
unlock
线程通信:
缓冲区,消息队列
wait()
notifyAll()
线程池pool:
池化技术
线程大小
最大连接数
保持时间
网络编程:
ip
port
Socket编程
TCP:三次握手,四次挥手,面向链接
UDP:无链接,packet
url
聊天通信,文件上传下载
GUI:
AWT:
Frame
监听事件:鼠标,键盘,窗口,动作事件
Swing:
文本框
标签
按钮
文本域
面板
布局方式
关闭窗口
列表
贪吃蛇:Timer,键盘监听,游戏贞
注解;
元注解
内置注解
自定义注解
反射读取注解

反射:
Class newInstance()
类加载机制
Method:invoke()
Field:set()
Construct:newInstance()
破坏私有关键字:setAccessible(true)
性能分析:正常>检测关闭的反射>默认的反射
反射获取注解,泛型
单例模式
Stream
ForkJoin 效率对比

标签:类型转换,反射,Java,数据类型,汇总,基础知识,运算符,线程,注解
From: https://www.cnblogs.com/chenshaojun2008/p/18565699

相关文章

  • 【轻量级 Java Web 整合开发(第 2 版)-框架编程技术】-期末复习(第二版)
    第一章JavaWeb技术概述作业1、完成课后(P28)选择题和问答题(只需完成,不需要提交)2、Tomcat的目录结构及其用途?bin:启动/关闭应用服务器的bat批处理命令;conf:包含不同的配置文件。包括server.xml(Tomcat的主要配置文件)和为不同的Tomcat配置的web应用设置缺省值的文件we......
  • 一个基于原生 JavaScript 的简约消息提示插件,非常轻量,不依赖于任何第三方库或框架,使其
    在现代的Web开发中,提供良好的用户反馈是至关重要的。消息提示是其中一种最常见的方式之一,它可以用来向用户传达重要信息、警告或成功状态。然而,为了简化开发者的工作并提供一种轻量级、易于集成的解决方案,Dream-Msg应运而生。Dream-Msg是一个基于原生JavaScript的简约......
  • JavaScript基础简介
    内嵌内嵌JS指的是将JavaScript代码直接写在HTML文件的<script>标签中,通常放在<head>或<body>标签内。这种方式使得JavaScript代码与HTML结构紧密联系在一起,便于在单个HTML文件中进行简单的交互和动态效果实现。代码:效果:外嵌外嵌JS指的是将JavaScript代码写在独立的.js文......
  • java web 知识点 & 项目结构及代码
    概念第一部分请求转发在服务器内部完成,地址栏URL不变,适合数据共享;而请求重定向则在客户端完成,导致URL变化,适合需要通知用户访问新页面的场景。GET一般用于获取数据,适合用于不改变服务器状态的请求,适合传输少量数据。POST用于提交数据并可能改变服务器状态,适合传输大量数据和......
  • 基于Java+Vue的采购管理系统:降低企业采购成本,提升采购效率(源代码分享)
    前言:采购管理系统是一个综合性的管理平台,旨在提高采购过程的效率、透明度,并优化供应商管理。以下是对各个模块的详细解释:一、供应商准入供应商注册:供应商通过在线平台进行注册,填写基本信息和资质文件。资质审核:系统对供应商提交的资质文件进行自动或人工审核,确保供应商符......
  • 【JavaEE初阶 — 多线程】定时器的应用及模拟实现
         目录  1.标准库中的定时器      1.1Timer的定义      1.2Timer的原理      1.3Timer的使用     1.4Timer的弊端      1.5ScheduledExecutorService     2.模拟实现定时器    ......
  • 毕业设计 基于javaweb的装修公司管理系统
    源码获取欢迎留言一、摘要本研究旨在探讨并详细介绍基于JavaWeb技术的装修公司管理系统的设计与实现。随着建筑行业的发展,装修公司在项目管理、资源协调和信息处理方面面临着越来越复杂的挑战。首先分析了传统装修公司管理的痛点和需求,然后提出了一套综合管理系统,涵盖了项......
  • 使用 JavaScript 的 XMLHttpRequest 或 Fetch API 发送 HTTP 请求时,GET 请求和 POST
    使用JavaScript的XMLHttpRequest或FetchAPI发送HTTP请求时,GET请求和POST请求处理参数的方式不同,这与HTTP协议的设计有关GET请求的参数特点:GET请求的参数通过URL传递。原因:URL表现方式:GET请求的主要目的是从服务器获取资源。URL是资源的唯一标识,因此GET......
  • 基于java ssm springboot留守儿童爱心网站系统旧物爱心捐赠志愿者活动报名(源码+文档+
     文章目录系列文章目录目的前言一、详细视频演示二、项目部分实现截图三、技术栈后端框架springboot前端框架vue持久层框架MyBaitsPlus系统测试四、代码参考源码获取目的摘要: 本文介绍了基于JavaSSM和SpringBoot构建的留守儿童爱心网站系统。该系统旨在为留守......
  • 基于java ssm springboot校园二手书交易管理系统二手图书商城(源码+文档+运行视频+讲解
     文章目录系列文章目录目的前言一、详细视频演示二、项目部分实现截图三、技术栈后端框架springboot前端框架vue持久层框架MyBaitsPlus系统测试四、代码参考源码获取目的摘要: 本文介绍了基于JavaSSM和SpringBoot构建的校园二手书交易管理系统。该系统为校园内......