2022年JavaSE知识点总结2.docx

上传人:Che****ry 文档编号:12790887 上传时间:2022-04-26 格式:DOCX 页数:22 大小:62.19KB
返回 下载 相关 举报
2022年JavaSE知识点总结2.docx_第1页
第1页 / 共22页
2022年JavaSE知识点总结2.docx_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《2022年JavaSE知识点总结2.docx》由会员分享,可在线阅读,更多相关《2022年JavaSE知识点总结2.docx(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2、 面对对象得懂得面对对象就是 Java 得基本特点,就是软件开发过程使用得基于面对过程一种思维方式, 将功能封装进对象,强调具备功能得对象与调用结果,不关注详细实现这个功能得过程;面对对象特点:就是一种更符合人们摸索习惯得思想,可以将复杂得事情简洁化,将程序由执行者转换成为指挥者;面对对象特性:封装,继承,多态封装:封装就是把数据与方法包装进类中,隐匿其详细实现细节,对外供应公共拜访方法;封装得结果就是一个同时带有特点与行为得数据类型;(安全性,复用性)继承:当一个类得属性与行为均与现有类相像,属于现有类得一种时,这一个类可以 定义为现有类得子类;或者,当多个类具有相同得属性与行为,我们可

2、以抽取出共性 得内容定义父类,再创建相像得”兄弟 ”类时只要继承父类即可;当子类继承父类后, 拥有了父类非私有得方法并可以直接调用;假如认为父类供应得方法不够强大,子类 可以依据子类自身得规律重写继承过来得父类方法;(复用性,可保护性,多态前提)多态:继承就是多态得前提,多态就是指一种事物具有多种形状,比如猫具有猫类得形状,也具有动物得形状,多态得详细表现就是父类引用指向子类对象,父类得引用也可以接收自己子类得对象;(可保护性,扩展性)面试 :跟我谈谈什么就是面对对象1 面对对象就是基于面对过程得2 什么就是面对过程什么就是面对对象3 面对对象得特点3、 面对对象与面对过程得区分面对过程强调得

3、就是功能行为,分析解决问题所需得步骤,以函数为基础,完成各种步骤得操作与实现;面对对象就是基于面对过程得,将功能封装成对象,强调得就是具备了这些功能得对象,让对象去调用方法来解决问题;面对对象举例4、 abstract 与哪些关键字不能共存为什么private :私有得方法就是不行见得,无法被重写final :被 final 修饰得方法就是最终方法,无法被重写static :被 static 修饰得方法,要随类加载到方法区,由于抽象方法没有方法体所以不能加载5、 static 得特点(1) 随着类得加载而加载;优先于对象存在; 被全部对象所共享;可以直接被类名所调用;(2) 静态方法只能拜访静

4、态,非静态方法既可以拜访静态也可拜访非静态(3) 静态方法中不行以定义this 、super 关键字,由于静态优先于对象存在,this与 super 所代表得对象仍不存在;6、 类与类、类与接口、接口与接口得关系继承(单继承,多层继承,object ),实现(多实现),继承(多继承)7、 final 、finally 、finalize 得区分final :可以修饰类、方法与变量,被final 修饰得类无法被继承,方法无法被重写,变量为常量只能赋值一次finally :反常处理,与 try 、catch 结合使用,可以添加也可以不添加,用于执行一些必需执行得代码,如释放资源等finalize

5、:Object 类中得方法,其中定义了对象要被垃圾收集器回收之前要做得相关得清理工作8、 什么就是多态,多态得好处与弊端多态可以懂得为 事物存在得多种表达形状;父类得引用指向了自己得子类对象; 父类得引用也可以接收自己子类得对象;提高了程序得可保护性与扩展性弊端:父类得引用只能拜访父类中有得成员而无法调用子类中特有得方法10 、 wait 与 sleep 得区分(1) 所在得类不同: wait 就是 Object 类中得方法, sleep 就是 Thread 类中得方法 2sleep 方法没有释放同步锁,而wait 方法释放了同步锁,使得其她线程可以使用;(3) sleep 必需指定时间, w

6、ait 可以指定也可以不指定时间;(4) wait , notify 与 notifyAll 只能在同步方法或者同步代码块里面使用,而sleep 可以在任何地方使用(5) sleep 必需捕获反常,而 wait , notify 与 notifyAll 不需要捕获反常16 、 对匿名内部类得懂得匿名内部类就就是没出名字得内部类,就是内部类得简化形式;一般只使用一次得时候使用匿名内部类, 匿名内部类本质上就是一个匿名子类对象;匿名内部类得使用前提: 内部类继承一个类或实现接口;匿名内部类包括两个步骤:创建一个类或者接口 得子类,即刻创建该子类得对象;简化书写;17 、 IO 体系字节流 Inpu

7、tStream/OutputStream |-:文件字节流,用于文件得读写操作|- BufferedInputStream/BufferedOutputStream:加缓冲区得字节流,用于提高效率字符流 Reader/Writer |-:文件字符流,用于文本文件得读写操作|- BufferedReader/BufferedWrite:加缓冲区得字符流,用于提高效率转换流InputStreamReader/OutputStreamWriter:就是字节流与字符流之间得桥梁18 、 集合体系|-Vector :功能同 ArrayList 类似,底层也就是数组,线程就是同步得,所以就是安全得,效率较

8、低,数据增长就是50% 得增长;|-Set :元素就是无序得,元素不答应重复,底层用到了Map|-HashSet :底层 hash 表,储备得对象最好复写hashCode 与 equals 方法,|-TreeSet :底层自平稳得二叉树,储备得对象具备比较性,有两种方法:自然排序、比较器排序|-Collection |-List:元素就是有序得,元素答应重复,由于该集合体系都具有索引|-ArrayList :底层数据结构就是数组,查询速度快,增删操作较慢,线程不同步|-LinkedList :底层数据结构就是链表,查询效率较低,增删操作快,线程不同步,数据增长就是 100% 得增长; 保证元素

9、不会重复|-Map :数据就是以键值对得形式储备得,有得元素存在映射关系就可以使用该集合,|-HashMap :答应有 null 键或值,线程不同步,键就是唯独得|-TreeMap :元素可排序|-HashTable :类似 HashMap ,不答应有 null 键或值,线程同步,元素不答应重复21 、 局部变量与成员变量区分成员变量定义位置:类中,整个类中均可以拜访,通常用private 修饰;内存:成员变量随着对象得建立而建立,存在于对象所在得堆内存中;默认值:成员变量有默认值;回收:随着对象得回收而回收;局部变量定义位置:定义在局部范畴,如方法内,语句内等;内存:局部变量存在于栈内存中;

10、默认值:没有默认值;回收:随着作用域终止而回收,通常为语句或方法范畴;22 、 同步函数与同步代码块得区分同步代码块使用得锁可以就是任意对象;同步函数使用得锁就是this ,静态同步函数得锁就是该类得字节码文件对象;在一个类中只有一个同步得话,可以使用同步函数;假如有多同步,必需使用同步代码块,来确定不同得锁;所以同步代码块相对敏捷一些;23 、 数组与集合得区分容器长度:集合长度可变,数组长度固定储备内容类型:集合储备引用数据类型,数组储备任意类型就是否可储备不同类型数据:数组只能储备同种数据类型得元素,集合可以储备不同类型 键值 得元素;有序可重复:数组就是有序可重复得集合中有些就是有序可

11、重复得如list ,有些就是无序不行重复得如set, map 24 、 StringBuffer与 StringBuilder得区分StringBuffer就是同步得,所以线程安全,但就是效率低,StringBuilder就是不同步得, 所以线程担心全,但就是效率高;StringBuilder要比 StringBuffer快;单线程得程序使 用 StringBuilder比较好,多线程得情形下可以自己加锁,也可以直接使用StringBuffer ;25 、 String 与 StringBuffer区分String 对象一经创建就不会发生变化了,即便就是赋新值也不就是在原对象得基础上转变,而就

12、是创建一个新得字符串对象,将引用指向这个新得对象,会造成空间得浪 费,效率较低; StringBuffer只创建一个对象,就是在同一个实例得基础之上追加,效率更高,当需要用到 String 得时候 toString 就可以了其次部分 学问点26 、 说明 Java 中 String str=null与 String str=得区分?String str = null表示声明白一个 String 对象得引用 str ,但就是没有为其安排内存空间;String str = 表示创建了一个长度等于0 得空字符串,并在内存中为其安排了内存空间;String str = new Stringtw; st

13、r在内存中有两个对象, 1、堆内存有一个 new Sting 2、常量池中有一个字符串;27 、 使用运算符 = = 与方法 equals进行比较对象得区分?使用 = 算符比较基本数据类型时,比较得就是值相等;使用 = 算符比较对象时, 比较得就是内存地址值使用 equals 方法 比较对象时,比较得就是对象得内容,与地址无关,假如没有重写equals 方法就直接调用得就是Object 得 equals 方法;28 、 接口与抽象类有何区分?(1) 成员特点:构造方法:接口没有构造方法;抽象类有构造方法;成员变量:接口中只有常量;抽象类中可以就是常量,也可以就是变量;成员方法:接口中只有抽象方

14、法;抽象类中既有抽象方法,也有非抽象方法;(2) 关系特点:类与类:类与类之间只有单继承,可以有多层继承;类与接口:类与接口之间就是实现关系,可以单实现,也可以多实现;接口与接口: 接口与接口之间就是继承关系,可以单继承,也可以多继承;(3) 设计理念:接口对应得设计模式就是 简洁工厂设计模式 ,抽象类对象得设计模式就是模板设计模式;(5)必需实现抽象类或接口得全部抽象方法才可以实例化;黑马程序员入学面试题32 、 不借用第三方变量,互换两个变量;n=nm;m=nm;/nmm一个数异或另一个数两次,仍就是得原先那个数n=nm/nnm33 、 传统 for 与增强 for 有什么区分呢?1、 增

15、强 for 对集合进行遍历,集合不能为空;只能猎取集合元素,但就是不能对集合进行操作;增强for 有一个局限性,必需要有被遍历得目标;2、 迭代器除了遍历,仍可以进行remove 集合中元素得动作;假如就是用 ListIterator ,仍可以在遍历过程中进行增删改查得动作;建议在遍历数组得时候,仍就是期望就是用传统for ;由于传统 for 可以定义角标;1、增强 for 循环与 iterator 遍历得成效就是一样得,也就说增强for 循环得内部也就就是调用 iteratoer实现得,但就是增强 for 循环有些缺点,例如不能在增强循环里动态得删除集合内容;不能猎取下标等;2、ArrayL

16、ist 由于使用数组实现,因此下标明确,最好使用一般循环;34 、 Collection 与 Colections 得区分就是什么?Collection 就是一个单列集合得顶层接口,它就是List 、Set、Queue 等接口得父接口;在这个接口中,定义了集合类中通用得方法;Collections 就是针对集合操作得工具类,有对集合进行排序与二分查找等静态方法;37 、 线程得状态: 线程得五种状态:1) 新建 new用 new 语句创建得线程对处于新建状态,此时它与其它Java 对象一样,仅仅在 Heap 中被安排了内存;当一个线程处于新建状态时,它仅仅就是一个空得线程对象,系统不为它安排资

17、源;Thread t = new Threadnew Runner;2) 就绪 Runnable程序通过线程对象调用启动方法start 后,系统会为这个线程安排它运行时所需得除处理器之外得全部系统资源;这时,它处在随时可以运行得状态, 在随后得任意时刻,只要它获得处理器即会进入运行状态;t、 start3) 运行 Running处于这个状态得线程占用CPU,执行程序代码;在并发环境中,假如运算机只有一个 CPU,那么任何时刻只会有一个线程处于这个状态;假如运算机中有多个 CPU,那么同一时刻可以让几个线程占用不同得CPU,使它们都处于运行状态,只有处于就绪状态得线程才有机会转到运行状态;4)

18、堵塞 Blocked 堵塞状态就是指线程由于某些缘由舍弃 CPU,临时停止运行;当线程处于堵塞状态时, Java 虚拟机不会给线程安排 CPU,直到线程重新进入就绪状态, 它才有机会转到运行状态;堵塞状态可分为以下 3 种:位于对象等待池中得堵塞状态Blocked in objects wait pool:当线程处于运行状态时, 假如执行了某个对象得wait 方法, Java 虚拟机就会把线程放到这个对象得等待池中;位于对象锁池中得堵塞状态Blocked in objects lock pool:当线程处于运行状态,试图获得某个对象得同步锁时,假如该对象得同步锁已经被其她线程占用,Java 虚

19、拟机就会把这个线程放到这个对象得锁池中;其她堵塞状态 Otherwise Blocked:当前线程执行了 sleep 方法,或者调用了其她线程得 join 方法,或者发出了 I/O 恳求时,就会进入这个状态;当一个线程执行System 、out 、println 或者 System 、in 、read 方法时就是,就会发出一个I/O恳求,该线程舍弃 CPU,进入堵塞状态,直到I/O 处理完毕,该线程才会复原执行;5) 死亡 Dead 当线程退出 run 方法时,就进入死亡状态,该线程终止生命周期;线程有可能就是正常执行完 run 方法而退出,也有可能就是遇到反常而退出;不管线程就是正常终止仍就

20、是反常终止,都不会对其她线程造成影响;40 、 集合集合名称阅读技巧:JDK1、2 显现得集合框架中常用得子类对象前缀名就是结构名,后缀名就是体系名;ArrayList :数组结构,瞧到 Array 就知道查询速度快, 瞧到 List 就知道可以又重复元素,可以增删改查LinkedList :链表结构,增删快HashSet :哈希结构,查询速度更快,不保证有序,不行以重复,必需掩盖hashCode与 equals 方法LinkedHashSet :链表加哈希结构,可以实现有序TreeSet :二叉树结构,可以排序;有两种方法:1、自然排序 compable ,2、比较器comparator J

21、ava供应了只包含一个 compareTo 方法得 Comparable 接口;这个方法可以个给两个对象排序;详细来说,它返回负数,0,正数来说明输入对象小于,等于, 大于已经存在得对象;Java 供应了包含 compare 与 equals 两个方法得 Comparator 接口; compare 方法用来给两个输入参数排序,返回负数,0,正数说明第一个参数就是小于,等于,大于 其次个参数; equals 方法需要一个对象作为参数,它用来打算输入参数就是否与comparator相等;只有当输入参数也就是一个comparator并且与当前 comparator得排序结果就是相同得时候,这个方法

22、才返回true 、ArrayList 与 Vector 都就是使用数组方式储备数据,此数组元素数大于实际储备得数据以便增加与插入元素,答应直接按序号索引元素、但就是 插入元素要涉及数组元素移动等内存操作 ,所以索引数据快而插入数据慢,Vector 由于使用了 synchronized方法(线程安全), 通常性能上较 ArrayList 差,Vector 属于遗留容器,现在已经不举荐使用,LinkedList使用双向链表实现储备(将内存中零散得内存单元通过附加得引用关联起来, 形成一个可以按序号索引得线性结构,这种链式储备方式与数组得连续储备方式相比,其实对内存得利用率更高),按序号索引数据需要

23、进行前向或后向遍历,但就是插入数据时只需要记录本项得前后项即可,所以插入速度较快;由于 ArrayList 与 LinkedListed 都就是非线程安全得 ,假如需要多个线程操作同一个容器,可以通过工具类 Collections 中得 synchronizedList 方法将其转换成线程安全得容器后再使用(这其实就是装潢模式最好得例子,将已有对象传入另一个类得构造器中创建新得对象来增加新功能);Map 集合Map ( k,v ) k: 此映射所保护得键得类型v:映射值得类型Map 集合:双例集合,一次存一对,称为键值对;要保证键得唯独性;Map 集合没有迭代器,必需先将map 集合转成 se

24、t 集合,在使用迭代器,就可以取出结合中得元素;或者使用map 集合特有得 entrySet 方法,也可以取出 map 集合中虽有元素; Map 集合常见子类:1、HashTable :底层数据结构就是哈希表结构,线程同步得,不答应null键, null 值;2、HashMap :哈希表结构,不同步,答应null 键, null 值3、TreeMap :二叉树结构,不同步,可以对map 集合众多键进行排序;41 、 为什么需要配置 path ,什么时候需要答: path 路径:就是操作系统得环境变量,目得就是期望在任意目录下都能执行该命令操作起来更加便利快捷;classpath 就是给类供应路

25、径:想在其她目录下执行java 程序时需要配置classpath 路径;42 、 IO 流输入流: InputStream输出流: OutputStream字节输入流:字节输出流:字节输入流缓冲区: BufferedInputStream字节输出流缓冲区: BufferedOutputStream转换流: InputStreamReader字符输出流: OutputStreamWriter字符流:字符输入流缓冲区: BufferedReader字符输出流缓冲区: BufferedWriter49 、 list, set, map就是否继承自 collection 接口. list , set

26、就是 map 不就是;50 、 arraylist与 vector 得区分;一、同步性 :vector 就是线程安全得,也就就是说就是同步得,而arraylist 就是线程序担心全得,不就是同步得二、数据增长 :当需要增长时 ,vector 默认增长为原先一培,而arraylist 却就是原先得一半51 、 hashmap 与 hashtable 得区分一、历史缘由 :hashtable 就是基于陈旧得 dictionary 类得, hashmap 就是 java 1 、2 引进得 map 接口得一个实现二、同步性 :hashtable就是线程安全得,也就就是说就是同步得,而hashmap 就

27、是线程序担心全得,不就是同步得三、值:只有 hashmap 可以让您将空值作为一个表得条目得key 或 value 7:给成员变量赋值得方式有几种.分别怎么实现 .答: A:给静态得成员变量赋值(1) 可以通过类中得方法给成员变量赋值私有成员变量得也可以 public void setXXX 、 (2) 可以通过构造方法给成员变量赋值 私有成员变量得也可以 public XXX 、 (3) 可以通过代码块完成成员变量得初始化值私有成员变量得也可以 xxx= 、 ;(4) 可以通过类名、成员变量赋值B:给非静态得成员变量赋值(1) 可以通过类得方法赋值public void setXXX、 (2

28、) 可以通过对象调用(3) 可以通过代码块完成成员变量得初始化值xxx =、 ;如何懂得字符串一旦初始化就不行以被转变;不行以被转变说得就是常量池中得值,并不就是引用 ss 就是可以重新被赋值得 2、String s1 = new Stringabc;与 String s2 = abc;两者得区分第一种方式:第一种方式在内存中存在两个abc 字符串 ,一个就是在常量池中,一个就是在堆内存当中、其次种方式:在内存中只存在一个abc 在常量池中、反常:反常就是在程序运行过程中,发生得各种不正常状况;Java 中引入反常,以反常类Exception 对这些不正常状况进行封装,通过反常处理机制对程序运

29、行时可能发生得各种问题进行处理;Throwable 顶层类,包括 error 错误,Exception 反常,反常分为运行时反常与编译时反常处理方式: throws 声明抛出, try catch捕获处理, finally 肯定会被执行(释放资源) 运行时反常,运行时可能会报错,可以不处理;编译时反常,编译时无法编译通过,必需处理;throw 与 throws :throws 表示抛出反常类,由方法调用者使用;throws 用在方法声明后面,跟得就是反常类名; throws 后可以跟多个反常类名,用逗号隔开;throw用在方法体内,跟得就是反常对象名;表示抛出反常,由方法体内得语句处理;只能抛

30、出一个反常对象名;反常留意事项:子类抛出得反常 比父类抛出得反常小; 假如父类抛出了多个反常 ,子类掩盖父类方法时 ,只能抛出相同得反常或者就是她得子集父类方法没有抛出反常,子类掩盖父类该方法时也不行抛出反常;此时子类产生该反常,只能捕获处理,不能声明抛出泛型:(提前使用未知数据类型)什么就是泛型: 泛型得本质就是参数化类型,也就就是说所操作得数据类型被指定为一个参数;这种参数类型可以用在类、接口与方法得创建中,分别称为泛型类、泛型接口、泛型方法;泛型替代了 Object 来代表任意类型,在编译时会擦除;泛型类:定义:类名后 使用:创建对象时确定类型泛型方法:定义:方法返回值前 使用:调用方法

31、时确定类型泛型接口:定义:接口名后使用: 1、定义类时确定类型, 2、始终不确定类型,直到创建对象时确定类型泛型优点:提高程序得安全性,将运行期问题转移到了编译期,省去了类型强转得麻烦,优化了程序设计线程:每个运行得程序都就是一个进程,在一个进程中仍可以有多个执行单元同时运行,这些执行单元均就是程序执行得一条条执行路径,这些执行路径就就是线程,如果期望程序中实现多段程序代码同时运行,就需要多线程技术;就是由cpu 高速切换执行, java 使用得就是抢占式调度模型;1、直接继承 Thread 类重写 run 方法, 2、 线程与线程执行目标分别方式,实现runnable 接口,重写 run 方

32、法,相比较而言, 2 防止了 1 方法单继承得局限性,且能够用多个线程操作同一份共享数据,把线程与线程数据有效得分别开,也表达java 面对对象思想;此外,仍有线程池技术,提交任务,开启线程;五种状态:新建状态: new ,可运行状态: start 方法启动,运行状态:获得 cpu死亡状态: run 方法执行完, Exception ,error等待或堵塞状态: wait-notify , join- 调用 jion 得线程终止, sleep- 时间到, io 堵塞方法如 read- 堵塞方法返回,等待同步锁 -获得同步锁线程安全问题:当多个线程共同操作一份数据时,当线程1 操作数据到一半时,

33、线程2 抢走 CPU, 会导致 ”1 使用得数据已经被其她数据修改为1 不想要得数据了 ”;Java 中使用 synchronized 关键字来解决,将一个完整动作使用synchronized 包裹;即线程 A 中操作数据得代码与线程B 中操作数据得代码均使用synchronized 包裹,并使用相同得锁对象; 这时线程 B 会等待线程 A 中 synchronized 包裹得代码执行完毕后再执行,此时线程A 已经操作完了代码,反之线程A 也会等待线程 B;线程执行目标类 成员位置 定义多个线程要 共享得同一份数据;线程执行目标类 成员位置 定义多个线程要 共享得同一把锁对象;锁可以就是任意类

34、型得对象,只要多个线程使用同一把锁就可以使多个线程操作相同数据时同步;死锁:两个线程在运行时都在等待对方得锁,造成了程序得停滞,称为死锁;基本数据类型包装类:基本类型就是内置得数据类型,为了使基本数据类型代表得数据使用起来更便利,统 一面对对象得思想, Java 设计了基本类型包装类,即每一种基本类型都对应一种引用类型得包装数据类型;除去整型与字符型,其她基本数据类型将首字母大写即为包装 数据类型;自动装箱拆箱: jdk1 、5 之后装箱就就是把基础类型封装成一个类;比如把int 封装成 Integer ,这时您就不能把她当成一个数了,而就是一个类了,对她得操作就需要用它得方法了;拆箱就就是把

35、类转换成基础类型;比如您算个加法什么得就是不能用类得,就得把它转换成基本类型迭代器:使用迭代器完成集合遍历得过程就是反复获得集合中元素得过程,通常我们将这个反复猎取得过程叫做迭代;增强for 循环底层也就是通过迭代器实现得;迭代过程中不能对集合元素进行增删动作,否就会发生并发修改反常(运行时)递归:递归就就是“在一个方法内可以再次调用自身”递归调用必需要在某个条件下终止,否就就就是死递归;递归调用得层次不能太多,否就会堆栈溢出;构造方法不能递归调用;四种拜访权限: Private: 类拜访级别默认:包拜访级别Protected :子类拜访级别Public:公共拜访级别IO :IO 就是 out

36、put 与 input ,就是 Java 中实现程序与设备之间数据交互动作得途径,java中将这种数据传输抽象为流;字节流:顶层父类: outputstream,inputstream, , bufferedoutputstream, bufferedinputstream字符流:顶层父类: Writer , reader, BufferedWriter , BufferedReader转换流: OutputStreamWriter,InputStreamReader字节流与字符流区分:字节流以字节为单位传输数据,传输得就是0101 数据,所以可以处理任何数据,字符流就是为了便利处理文本数据,

37、通过字符码表实现字符与二进制数得转换;常见得字符码表:ASCII ,Unicode , UTF-8 , GBK(兼容 GB2312 并供应更多中文),GB2312匿名内部类:匿名内部类就是创建某个类型子类对象得快捷方式;匿名内部类有两个步骤:临时定义一个类型得子类定义后即刻创建刚刚定义得这个类得对象匿名内部类就就是没出名字得内部类,就是内部类得简化形式;一般只使用一次得时候使用匿名内部类, 匿名内部类本质上就是一个匿名子类对象;匿名内部类得使用前提: 内部类继承一个类或实现接口;匿名内部类包括两个步骤:创建一个类或者接口 得子类,即刻创建该子类得对象;简化书写;网络通信协议:在运算机网络中进行

38、连接与通信得规章;对数据得传输格式,传输速率,传输步骤等有统一得规定,通信双方需要同时遵守才能完成数据交换;IP 地址:网络通信中运算机设备得唯独标识端口:用于标识运算机设备中接收数据得网络应用程序详细就是哪一个,有效端口065535 ,01024为系统端口及保留端口TCP 与 UDP:UDP:面对无连接,就是不行靠协议,不能保证数据完整性,担心全;每个数据报限制在 64k 以内,发送数据较少,速度快,视频;TCP:面对连接得通信协议,通过三次握手建立连接通路,就是牢靠协议,保证数据安全,可进行大量得数据传输,速度慢,效率较低;OSI 与 TCP/IP 模型:OSI:应用层,表示层,会话层,传

39、输层,网络层,数据链路层,物理层TCP/IP :应用层传输层,网际层,主机至网络层网络编程:在 Internet上得主机一般运行了多个服务软件,同时供应几种服务;每种服务都打开一个 Socket ,并绑定到一个端口上,不同得端口对应于不同得服务;Socket 就就是为网络编程供应得一种机制,又叫套接字编程;特点:网络编程三要素: IP(网络通信中运算机设备得唯独标识),端口(用于表示运算机中接收网络数据得应用程序就是哪一个),通信协议(客户端与服务器之间连接与通信得规章,通常使用 TCP/IP ,三次握手建立连接)通信得两端都有Socket ;网络通信其实就就是 Socket 间得通信;数据在

40、两个 Socket 间通过 IO 传输;Socket 编程一般使用TCP 与 UDP 两种协议,我们主要使用TCP:TCP 协议通过三次握手协议将客户端与服务器端连接,两端使用各得意Socket 对象; Socket 对象中包含了IO 流,供数据传输;数据库:1、数据库就就是储备数据得仓库,其本质就是一个文件系统,数据依据特定得格式将数据储备起来,用户可以对数据库中得数据进行增加,修改,删除及查询操作;比如MySQL,Oracle , SQLServer,DB2 等等;2、数据库就是真正储备数据得地方;数据库中以表为组织单位储备数据,类似于java 中得类;依据表字段锁规定得数据类型,可以向其

41、中添加数据,表中得每条数据类似于对象;SQL 语句就是用于我们与数据库进行交互得命令,完成增删改查等等;数据定义语言 : DDL ,用来定义数据库对象:数据库,表,列等,例如创建、删除、修改:数据库、表结构等;数据操作语言 : DML,用来对数据库中表得记录进行更新, 例如:增、删、改表记录;数据掌握语言 :DCL,用来定义数据库得拜访权限与安全级别,及创建用户; 数据查询语言 :简称 DQL,用来查询数据库中表得记录;详细命令查文档JDBC 用于完成在 Java 代码中操作数据库;作用:连接数据库;向数据库发送SQL 语句;操作 SQL 语句得返回结果JDBC 连接数据库过程:导入 mysq

42、l 得驱动程序 jar 包通过 DriverManager注册驱动通过 DriverManager猎取连接对象 Connection通过 Connection 猎取一个可以向数据库发送sql 语句得对象 Statement 通过 Statement 对象执行 sql 语句 select得到一个结果集ResultSet 遍历结果集 ResultSet ,得到数据表中得数据释放资源JDBC 优点:Java 语言与 JDBC 结合起来使程序员不必为不同得平台编写不同得应用程序,只须写一遍程序就可以让它在任何平台上运行;接口与抽象类:抽象类即不能创建实例得类,仅用来描述一种类型应当具备得基本特点与功能

43、;抽象方法即只有功能声明,没有功能主体实现得方法;包含抽象方法得类肯定就是抽象类;接口就是功能得集合,就是比抽象类更为抽象得类,同样就是一种数据类型,定义得就是一种规章;必需实现抽象类或接口得全部抽象方法才可以实例化;区分:(1) 成员特点:构造方法:接口没有构造方法;抽象类有构造方法;成员变量:接口中只有常量;抽象类中可以就是常量,也可以就是变量;成员方法:接口中只有抽象方法;抽象类中既有抽象方法,也有非抽象方法;(2) 关系特点:类与类:类与类之间只有单继承,可以有多层继承;类与接口:类与接口之间就是实现关系,可以单实现,也可以多实现;接口与接口: 接口与接口之间就是继承关系,可以单继承,

44、也可以多继承;抽象类被继承表达得就是所属关系is a 关系,抽象类中定义得就是继承体系中得共性功能;接口被实现表达得就是like a 关系,接口中定义得就是继承体系中得扩展功能;接口特点:Java 支持继承一个类同时实现多个接口;接口可以继承接口;类可以在继承一个类得同时,实现多个接口;接口与父类得功能可以重复,均代表要具备某种功能;接口中得成员就是固定得:变量修饰符为: public static finalstatic与 final 明天讲解 方法修饰符为: public abstract所以重写接口方法时,必需使用public方法重写与方法重载:所谓方法重载就是指在一个类中,多个方法得方

45、法名相同,但就是参数列表不同;参数列表不同指得就是参数个数、参数类型或者参数得次序不同;构造方法就就是重载形式存在得;重载留意事项:方法名相同,参数列表不同(参数个数、参数类型或者参数得次序不同),与返回值无关;当子类继承父类后,拥有了父类非私有得方法并可以直接调用;假如认为父类供应得方法不够强大,子类可以依据子类自身得规律重新定义继承过来得父类方法,这个重新定义一个方法得过程叫做方法重写;重写得结果就是子类得方法便将父类得方法掩盖;一般情形下,继承就就是为了方法重写,不重写子类与父类一样就没有意义了;Java 中方法重写规章:拜访权限相同或子类方法权限更大方法名称与参数列表必需相同返回值为基本类型时必需相同返回值为引用类型时相同或子类小构造方法得特点 .构造方法得留意事项 .构造方法得特点: 1、方法名与类名相同 2、没有返回值类型,连void 都没有构造方法留意事项:假如我们没有给出构造方

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁