学习javaSE总结

个人学习总结,只有学的对象和要学的对象,不足请勿喷,事宜人群,刚刚学习java,没有具体学习计划的人,javaSE基本就我总结的东西。

1.java语言---学习目录(了解)

1.1,你要了解这个语言的一些发展,包含计算机语言发展历

1.2,学会使用简单的Dos命令

1.3,MarkDown语法

1.4,强烈建议学习中写博客

1.5,java的诞生, 1995------JavaSE,JavaME, JavaEE

2006------Hadoop

1.6,JDK------开发包-----配置环境变量【要求,在不看任何文档的前提下,成功配置环境】

1.7,JRE-------运行环境

2.正是开始

2.1,HelloWord 【第一个程序】

public class HelloWord {
    public static void main(String[] args) {
        //首先clas后面的类名,单词首字母大写
        System.out.println("HelloWord");
        //符号必须是英文“  ”或者;
    }
}

2.2,学了两个命令

2.2.1,javac 比如Hello.java 会生成一个class文件

2.2.2,java Hello

2.2.3,编译型语言

2.2.4,解释型语言

2.2.5,java属于编译型+解释型语言。静态语言+准动态语言

2.2.7,idea的使用

3.1,基础语法

3.1.1,注释

3.1.1.1,行内注释//

3.1.1.2,多行注释/* */

3.1.1.3,文档注释/** */ javadoc生成帮助文档

3.1.2,标识符,关键字

3.1.3,数据类型

3.1.3.1,基本数据类型

,整数

byte       1      个字节

short      2      个字节

int          4      个字节

long        8      个字节

ob  二进制

ox 十六进制

o   八进制

浮点数

float        4      个字节

double    8      个字节

BigDecimal  金融计算

字符

char          2      个字节

ascii        1   个字节

utf-8        中文一般用这个

Unicode     2  个字节

'\u0000’          \b  \n  \r  \t  \'   \"   \\    转意

布尔值

boolean      1     位

if(a)

3.1.4,引用类型

接口

数组

3.1.5,类型转换

自动类型转换---------低转高

强制类型转换----------高转低 (低)高

3.1.6,变量和常量   --------type  varName =  value;

作用域

类变量

实列变量

局部变量

常量   dinal    MAX A =10 ;

命名规范 

见名知意

驼峰命名,变量,方法

类,首字母大写

常量,大写+下划线

不要使用拼音

3.1.7,运算符

算术运算符-----------       +  -  *  /  %   ++   --

赋值运算符              =

关系运算符          >  <  >=   <=  ==  !=   instanceof

逻辑运算符                &&  ||  !

位运算符                   &   |  ^  ~  >>   <<  >>>

条件运算符           ?  :

扩展运算符                +=   -=   *=  /=

3.1.8,包机制

域名倒写

防止命名冲突

package

import

3.1.9,javaDoc  

JDK帮助文档

javadoc  @author   @Version  @Since   @param   @return  @throws

4.1.1,流程控制

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

选择结构      if但选择结构

if-else 双选择结构

if-else-if-else多选择结构

switch   jdk支持String    case穿透现象   break    default

循环结构   

while

   do...while

  for 

增强for循环

Scanner   用户交互

break&continue  

break  跳出循环

continue 终止当次循环

return  结束方法的运行

5.1.1方法      语句块的集合

方法的定义   修饰符  返回值  方法名(参数名){返回值}

方法调用   类名.方法    对象.方法

方法重载   名字相同,参数列表不同

命令行传参   给main 方法传递参数

可变长参数   必须放在最后一个参数

递归   自己调用自己,给自己应该出口。{面试常问}

6.1.1,数组

数组的定义    new int[5]    必须是同一个类型

 数组的使用   通过下标拿到值   ArraylndexoutofBounds  增加for循环遍历

二维数组  int[][]

Arrays 工具类

排序算法

冒泡排序

选择排序

插入排序

快速排序

归并排序

希尔排序

堆排序

桶排序

基数排序

7.1.1,面向对象

什么是面向对象

类与对象    类是对象的抽象   模板class  对象是类的具体

构造方法  构造重载   默认是无参构造   如果手动定义了一个有参构造,必须加一个无参构造

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

封装   属性私有,get,set

继承  extends  object  子类用有父类的全部特性,方法的重写,this,super

            java是单继承,只能继承一个父类

多态  父类的引用指向子类的对象   instanceof关键字,如果匹配,可以进行类型之间的转换

修饰符   public  protected  private static abstract final

接口interface 

约束,只能定义方法名,子类实现接口,必须重写其中的方法

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

接口比抽象类更抽象

一个类可以实现多个接口

内部类

局部内部类

静态内部类

匿名内部类(重点)

8.1.1,异常 Throwable 

Exception 

运行是异常  1/0  ClassNoFound  NullPoint   UNKownType  下标越界................

检查型异常  

Error   AWT错误 

JVM错误   StackOverFlow  OutOfMemory

五个关键字  try  ,catch,  final,  throw手动抛出异常,  throws方法抛出异常

自定义异常   继承Execption

9.1.1常用类

Object类   hashcode() toString()clone()getClass()notify()wait()equals()

Math类        常见是数学类

Random类       生成随机数

File类     创建文件,查看文件,修改文件,删除文件,

包装类     自动装箱和拆箱

Date类   Data   SimpleDataFormat  Calender建议使用的

String类  不可变性final

StringBuffer类   可变长  append   多线程数据量较大,效率低,安全

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

10.1.1,集合框架

Collection   

List  有序可以重复

 常用ArrayList  aad  remove contains contains size

常用LinkedList  getFirst  getLast  removeFirst  addFirst

Vector

Stack

Set  无序,不可重复

常用HashSet,  

TreeSet

迭代器Iterator

Map

天天用HashMap

1.7数组+链表

1.8 hash=数组+链表+红黑树

TreeMap

Collection工具类

泛型<>约束,避免类型转换之间的问题

IO流

字节流,输出outputStream、,输入inputStream

字符流  Reader,Wirter

节省流

 CharArrayReader,Wirter,inputStream,outputStream

处理流 

  buffer    bufferinputStream,bufferoutputStream   bufferReader  bufferwriter

Data       DatainputStream    DataoutStream

转换流  inputStreamReader   outputStreamReader

Filter  四个

print  printWriter  printStream

object流

序列化,反序列化  Serializable  transient透明的

多线程

进程和线程

ren方法和Start方法

线程创建的方式   

Thread start本地方法,java无权调用交给底层private native void  start

Runnable函数式接口 lambda

Callable  可以有返回值

静态代理   new Thread(Runnable) start();

lambda  函数式编程,避免内部类定义过多

线程的状态   

新建状态

就绪

运行

阻塞

死亡

常用的方法

sleep

join

yield

islive

start

satpriority

interrupt

线程同步 

多个对象操作同一个资源,并发

 队列+锁

Synchronized  同步方法  同步代码块 第一个线程进来拿到锁,后面的人排队,直到释放,后面的才能进去

死锁,互斥,请求与保持,不剥夺条件,循环等待

lock      juc

ReentrantLock 

lock(优先级高)

trylock

unlock

线程通信  缓冲区,消息队列   标志位 红绿灯   wait  notifyAll 

线程池pool   池化技术,池的大小,最大连接,保持时间

网络编程

URL

端口

Socket编程

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

UDP 无连接,Packet

URL

初识Tomcat

GUI  

AWT Frame

监听事件,鼠标,键盘,窗口,文本框,动作事件

Swing  文本框  标签  按钮  文本域  面板   布局方式  关闭窗口  列表

timer

键盘监听

注解反射

注解,元注解

内置注解

自定义注解

反射读取注解

 

反射  Class   newInstance

类的加载机制

Method   invoke  存在重载,需要写参数类型

Field  set

Construct  newInstance  获取的时候需要,传递参数的class类型

破坏私有关键字  setAccessible

性能分析   正常>检测关闭的反射>默认反射

反射获取注解,泛型

单列模式的探究

Stream

ForkJoin 效率对比

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学习JavaSE可以通过以下几个步骤进行: 1. 了解JavaSE基础知识:JavaSEJava的标准版,主要用于开发桌面应用程序。你可以开始学习JavaSE基础语法、数据类型、控制流程等内容。可以参考\[3\]中提到的Java是一种跨平台、面向对象的高级程序设计语言,其语法和C++类似。 2. 学习JavaSE的核心概念:JavaSE包含了许多核心概念,如面向对象编程、异常处理、多线程等。你可以通过阅读相关的教程、书籍或参加培训课程来深入学习这些概念。 3. 实践编写JavaSE程序:学习JavaSE最好的方式是通过实践编写程序来加深理解。你可以尝试编写一些简单的JavaSE应用程序,如控制台程序、图形界面程序等。通过实践,你可以更好地理解JavaSE的各种特性和用法。 4. 参考JavaSE的官方文档和教程:JavaSE有详细的官方文档和教程,你可以参考官方文档来了解JavaSE的各种API和用法。此外,还可以参考一些优秀的JavaSE教程和书籍,如《Java核心技术》等。 总结起来,学习JavaSE需要掌握基础知识、核心概念,并通过实践编写程序来加深理解。同时,参考官方文档和教程可以帮助你更好地学习和应用JavaSE。 #### 引用[.reference_title] - *1* *2* *3* [教你如何正确学习JAVASE](https://blog.csdn.net/jsqzy/article/details/120726118)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值