Java SE
2021-02-08 18:07:28   0  举报             
     
         
 AI智能生成
  学习、仿制编写
    作者其他创作
 大纲/内容
  Java语言初识    
     我能不能学这个语言?  
     注册微博:27+  
     MarkDown语法  
     简单的DOS命令  
     计算机语言的发展  
     Java的诞生    
     1995    
     Java SE  
     Java EE  
     Java ME    
     Android  
     2006  
     JDK    
     开发者工具包    
     配置环境变量  
     JRE    
     运行环境  
     HelloWorld    
     public class HelloWord{...}  
     javac HelloWord.java    
     生成class  
     java HelloWord  
     编译型  
     解释型  
     IDEA  
     基础语法    
     注释    
     行内注释    
     //  
     多行注释    
     /* */  
     文档注释    
     /** */  
     标识符    
     关键字  
     数据类型    
     基本数据类型    
     整数    
     byte    
     1  
     short    
     2  
     int(默认)    
     4  
     long    
     8  
     浮点数    
     float    
     4  
     double(默认)    
     8  
     BigDeclmal  
     字符    
     char    
     2  
     常用编码    
     ASCII  
     UTF-8  
     Unicode  
     GBK  
     常用转义字符    
     \b    
     退格  
     \t    
     制表符  
     \n    
     换行  
     \r    
     回车  
     \\    
     反斜杠  
     布尔值    
     boolean    
     1位  
     if(a)  
     引用数据类型    
     类  
     接口  
     数组  
     类型转换    
     自动类型转换    
     低转高  
     强制类型转换    
     高转低    
     (低)高  
     变量与常量    
     type varName [=value]  
     作用域    
     类变量  
     实例变量  
     局部变量  
     常量    
     final MAX_A = 10  
     命名规范    
     见名知意  
     驼峰命名(变量+方法)  
     类:首字母大写,驼峰命名  
     常量:大写+下划线  
     少用拼音  
     运算符    
     算数运算符    
     + - * / % ++ --  
     赋值运算符    
     =  
     关系运算符    
     > < >= <= == !=  
     逻辑运算符    
     && || !  
     位运算符    
     & | ^ ~ >> << >>>  
     条件运算符    
     ? :  
     扩展运算符    
     += -= *= /=  
     包机制    
     域名倒写  
     防止命名冲突  
     package  
     import  
     javadoc    
     JDK帮助文档  
     javadoc    
     @author  
     @Version  
     @Since  
     @param  
     @return  
     @throws  
     流程控制    
     Scanner    
     用户交互system  
     顺序结构    
     程序默认结构,自上往下执行  
     分支选择结构    
     单分支结构    
     if()  
     多分支结构    
     if()...else if ...else   finally  
     switch    
     jdk7支持String类型  
     case 穿透现象  
     break  
     default’  
     循环结构    
     while  
     do...while  
     for    
     for(int i=0;i<100;i++){}  
     增强for循环  
     九九乘法表  
     break和continue    
     break跳出循环  
     continue 跳出当次循环  
     带标签的continue  
     return结束方法  
     方法    
     什么是方法  
     方法的定义    
     修饰符 返回值类型 方法名(参数类型 参数名){return 返回值}  
     方法调用    
     类名.方法名  
     对象.方法名  
     方法重载    
     方法名相同,参数列表不同  
     命令行传参    
     main方法传参  
     可变长参数    
     放在最后一个  
     递归    
     自己调用自己、出口  
     面试常问  
     数组    
     数组的定义    
     new int[5]  
     {1,2,3,4,5}  
     必须同一类型  
     数组的使用    
     通过下标拿到值  
     ArrayindexofBounds  
     增强for循环  
     二维数组    
     int[][5]  
     Arrays工具类  
     排序算法    
     冒泡排序  
     选择排序  
     插入排序  
     快速排序  
     归并排序  
     希尔排序  
     堆排序  
     基数排序  
     面向对象    
     什么是面向对象  
     类与对象    
     类是对象的模板class  
     对象是类的具体  
     构造方法    
     与类名相同的fangfa  
     构造方法的重载    
     默认的无参构造  
     如果手动定义了构造方法,必须再加上无参构造  
     单例模式,需要构造方法私有化  
     new 对象    
     栈存放引用  
     堆存放具体的对象  
     封装    
     属性私有化、get、set方法  
     继承    
     extends  
     Object  
     子类拥有父类的全部特性  
     方法的重写  
     this  
     super  
     java类是单继承,只能继承一个父类  
     多态    
     父类的引用指向子类的对象    
     Person person = new Student  
     instanceof关键字,如果匹配,可以进行类型之类的转换  
     修饰符    
     public  
     protected  
     private  
     static  
     final  
     abstract  
     接口    
     interface  
     约束、只能定义方法名  
     子类实现接口、必须重写其中的方法  
     只有一个方法的接口叫函数式接口,可以用lambda表达式简化  
     接口比抽象类更抽象  
     一个类可以实现多个接口  
     内部类    
     局部内部类  
     静态内部类  
     匿名内部类(重点)  
     异常    
     Throwable    
     Exception    
     运行时异常    
     1/0  
     ClassNotFount  
     NullPoint  
     UnKownType  
     下标越界异常  
     ......  
     检查性异常  
     Error    
     AWT异常   
     JVM异常    
     StackOverflow  
     OutOfMemory  
     五个关键字    
     try  
     catch()    
     先小后大  
     finally  
     throw    
     手动抛出异常  
     throws    
     方法抛出异常  
     自定义异常    
     继承Exception类  
     常用类    
     Object类    
     hashcode()  
     tostring()  
     clone()  
     getclass()  
     notify()  
     equals()  
     .....  
     Math    
     常见的数学运算  
     Random    
     生成随机数    
     UUID  
     File    
     创建文件  
     查看文件  
     修改文件  
     删除文件  
     包装类    
     自动装箱和拆箱  
     Date    
     Date  
     SimpleDateFormat    
     yyyy-MM-dd HH:mm:ss  
     Calendar(建议使用)  
     String    
     String    
     不可变性final    
     操作量少  
     StringBuffer    
     可变长    
     append()    
     多线程数据量大    
     效率低、安全  
     StringBuilder    
     可变长    
     单线程数据量大    
     效率高、不安全  
     String str = “a”+ 1 +2   
     int str = ‘a’+ 1 +2   
     String str = 1 + 2 + ‘a’  
     集合框架    
     Collection    
     List有序可重复    
     ArrayList常用    
     add  
     remove  
     contains  
     size  
     LinkList常用    
     getFirst()  
     getLast()  
     removeFirst()  
     addFirst()  
     Vector  
     Stack  
     Set无序不可重复    
     HashSet常用  
     TreeSet  
     Map    
     HashMap重点、天天用、面试高频    
     jdk7:数组加链表  
     jdk8:hash表=数组+链表+红黑树  
     TreeMap  
     Collections工具类  
     泛型<>约束,避免类型之间转换的问题  
     IO流-以程序为中心    
     字节流    
     InputStream  
     outputStream  
     字符流    
     Reader  
     Writer  
     节点流    
     CharArrayReader、CharArray....  
     StringReader、StringWriter  
     pipe(管道流)    
     pipedOutputStream  
     File    
     4个  
     处理流    
     buffer    
     4个  
     序列化    
     反序列化    
     Serializable    
     transient透明  
     data    
     DataInputStream  
     DataOutputStream  
     object流  
     转化流    
     inputStreamReader  
     OutputStreamWriter  
     Filter    
     4个  
     print    
     PrintWriter  
     PrintReader  
     多线程    
     进程与线程  
     run()、start()  
     线程的创建方式    
     Runnable    
     函数式接口    
     lambda  
     Thread    
     start0,本地方法,java无权调用交给底层的c处理    
     private native void start0;  
     Callable    
     可以有返回值  
     静态代理    
     new Thread(Runnable).start()  
     lambda表达式    
     函数式编程  
     避免内部类定义过多  
     new Thread(()-> {System.out.println}).start()  
     手动推导一遍lambda表达式  
     线程的状态    
     新建  
     就绪  
     运行  
     阻塞  
     死亡  
     常用的方法    
     sleep  
     join  
     isLive  
     start  
     setPriority  
     interrupt  
     线程同步    
     多个对象操作同一资源,并发  
     队列+锁  
     Synchronized    
     同步方法    
     弊端:锁太多  
     同步代码块(常用)  
     第一个线程进来拿到锁,后面的就要排队、知道这个人释放锁  
     四所:两个人都抱着对方需要的锁    
     互斥  
     请求与保持  
     不剥夺条件  
     循环等待条件  
     lock(优先级高)    
     ReentrantLock    
     lock  
     trylock  
     unlock  
     线程通讯    
     缓冲区:消息队列  
     标志位:红路灯  
     wait()  
     notifyAll();  
     线程池pool    
     池化技术  
     池的大小  
     最大连接数  
     保持时间  
     ....  
     网络编程    
     IP  
     端口  
     Socket编程  
     TCP    
     三次握手  
     四次挥手  
     面向连接  
     UDP    
     无连接  
     packet  
     URL  
     初识Tomcat  
     聊天通讯  
     文件上传  
     GUI编程(可选)    
     AWT    
     Frame  
     监听事件    
     鼠标  
     键盘  
     窗口  
     动作时间  
     Swing    
     文本框  
     标签  
     按钮  
     文本域  
     画板  
     布局方式  
     关闭窗口  
     列表  
     贪吃蛇    
     键盘监听  
     键盘监听  
     游戏帧的概念  
     注解与反射    
     注解    
     元注解  
     内置注解  
     自定义注解  
     反射读取注解  
     反射    
     Class    
     newInstance();  
     类加载机制  
     Method    
     invoke(Class对象、参数)  
     存在重载、也需要写参数的类型  
     Field    
     set(Class对象、参数)  
     Contruct    
     newInstance();  
     获取的时候需要传递参数的class类型  
     破幻私有关键字    
     setAccessble(true);  
     性能分析    
     正常>监听关闭反射>默认反射  
     反射获得注解、泛型  
     单例模式的探究  
     Stream  
     ForkJoin    
     效率对比  
    
 
 
 
 
  0 条评论
 下一页
  
   
   
  
  
  
  
  
  
  
  
  
  
 