




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象:面向对象是相对于面向过程而言。面向过程强调是功能,面向对象将功能封装进对象,强调是具备功能对象。类是对现实生活描述。对象是一类事物实实在在存在个体。堆内存和栈内存:基本类型变量和对象引用存储在栈内存;用new创立对象和数组存储在堆内存。封装:隐藏对象属性和实现细节,仅对外提供公共访问办法。原则:将不需要对外提供内容都隐藏起来,将属性都隐藏,提供公共办法对其访问。好处:提高安全性,便于使用,提高重用性。什么时候使用静态?成员变量:当对象中有共享数据时。成员函数:函数内部没有访问到非静态数据(对象特有数据)。协助文档制作:/***/@author作者;@version版本;@param参数;@return返回成果命令:javadoc-d文献夹-author-versionxxx.java。将生成一系列网页。静态代码块:static{}。用于给类进行初始化,只执行一次,优先于主函数。Personp=newPerson():1、找到Person.class加载到内存。2、执行static代码块。3、在栈内存中开辟main()办法空间,并分派一种变量p。4、在堆内存中开辟实体空间。5、进行属性空间分派,并进行默认初始化。6、对空间属性进行显示初始化。7、实体构造代码初始化。8、调用相应构造函数,进行构造函数初始化。9、将实体空间首地址赋给p。单例:classSingle{privateSingle(){}//私有化构造函数。privatestaticSingles=newSingle();//静态办法要访问它,因此也要静态化。静态办法不能访问非静态办法和属性。创立私有并静态本类对象。publicstaticSinglegetInstance(){//无法通过对象调用,只能是静态。定义公有并静态办法,返回该对象。returns;}}//懒汉式:延迟加载方式。classSingle2{privateSingle2(){}privatestaticSingle2s=null;publicstaticsynchronizedSingle2getInstance(){if(s==null)s=newSingle2();returns;}}继承:提高代码复用性,并为多态打下基本。Java只支持单继承。多继承隐患:各种父类定义相似功能时,子类对象不拟定要运营哪一种。重载:办法名相似,但参数不同各种同名函数;覆盖:子类重写父类办法,规定办法名和参数类型完全同样(参数不能是子类),返回值和异常比父类小或者相似(即为父类子类),访问修饰符比父类大或者相似隐藏:父类和子类拥有相似名字属性或者办法时,父类同名属性或者办法形式上不见了,实际是还是存在。多态:同一操作作用于不同对象,可以有不同解释,产生不同执行成果。内部类:内部类可以直接访问外部类成员,涉及私有。外部类必要建立内部类对象才干访问内部类成员。异常体系:error和exception==和equals()区别:"=="和"!="比较是"栈"中内容(对象地址),而equals()比较是"堆"中内容(对象内容)。多线程:建立线程两种办法:1、继承Thread类;2、实现Runnable接口。继承办口避免了单继承局限性。线程对象.setDaemon(true)设立守护线程。线程启动前调用,当正在运营线程只有守护线程时,java虚拟机退出。当a线程执行b线程.join()办法时,a会等待b线程执行完才会执行。线程对象.setPriority()设立线程优先级。StringBuilder不是线程安全,速度快;StringBuffer线程安全,慢。泛型是一种类型安全机制,用于解决安全问题。集合:为以便存储和操作对象,浮现集合类。数组可以存储对象,但长度固定,集合长度可变;数组可以存储基本数据类型,集合只能存储对象。Collection:List和SetList:有序,元素可以重复,有索引。ArrayList,底层数据构造是数组。查找速度快。删除元素用equals()判断LinkList,链表,增删速度快。Vector。线程同步,数组,查找速度快。Set:无序。元素唯一。HashSet:底层数据构造式哈希表。通过hashCode()和equals()办法保持唯一性。 如果元素hashCode值相似才会判断equals与否为true;TreeSet:底层是二叉树。可以对元素进行排序。按自然顺序就是compareTo()。实现排序两种办法:实现Comparable接口,覆盖comapreTo(Objectobj)办法。实现Comparator接口,覆盖compare(Object,Object)办法。Map:Hashtable,底层哈希表,不可以存储null值或键。线程同步。效率低。HashMap,哈希表,容许使用null值或键。不同步,效率高。TreeMap。底层是二叉树,线程不同步。可以给键进行排序。获取Map元素两种办法:Set<k>keyset,将Map集合中键存入Set集合;Set<Map.Entry<k,v>>mapEntry,将Map集合中映射关系存入Set集合。Collections:java集合工具类,用于操作集合类。Arrays集合:用于操作数组工具类。1.5新特性:可变参数,int...arr静态导入:importstaticjava.lang.System.*;用于导入静态办法;importjava.lang.*;用于导入类文献。System类:getProperties()办法获得返回系统属性Properties(Map集合子类)对象。Runtime类:运营时操作类。单例设计模式。Calendar类:抽象类,用getInstance()获得对象。Math类。IO流:惯用基类:派生子类用父类名做后缀字节流:InputStream,OutputStream字符流:Reader,Writer字符流:FileWriter,FileReader,需要flush();字符流缓冲区:BufferedReader,BufferedWriter;要结合流才干使用。需要flush(),关闭缓冲区就是关闭缓冲区流对象。LineNumberReader(FileReader)类,getLineNumber()办法可以获得行号字节流:FileOutputStream,FileInputStream。操作多媒体文献。转换流:InputStreamReader,OutputStreamWriter。属于字符流子类。In(System.in),out返回字节流。System.setIn(InputStream),System.setOut(PrintStream);变化原则输入输出。File类:合并流:SequenceInnputStream。用vectorelements()得到Enumeration。切割文献:循环里边创立流、关闭流。讲一种文献分某些存储在几种文献中。java.Awt:需要调用本地系统办法实现功能。javax.Swing:完全由java实现,增强移植性。 Component:1、Container:Window,Panel布局管理器:1、FlowLayout,Panel默认布局;2、BorderLayout,Fram默认。TCP和UDP:TCP要通过三次握手建立连接,传播大量数据,可靠合同,效率低。UDP不需要建立连接,不可靠合同,速度快。Socket:网络服务一种机制,网络通信就是Socket间通信,数据在两个Socket间通信。TCP:Socket,ServerSocketUDP:DatagramSocket,DatagramPacket加强:overload:重载,存在于父类和子类、同类中。只能通过不同参数样式重载。override:重写,存在于父类和子类之间。办法名、参数、返回值相似。子类办法不能缩小父类办法访问权限。不能抛出更多异常。可变参数:int...arrFor循环增强:for(inti:int[])枚举:让某个变量取值只能为若干个固定值中一种。反射:在运营状态可以懂得类所有属性和办法,并调用对象任意一种办法。获取类信息以及调用对象办法。类加载器:负责加载java类字节码到虚拟机中。每个类加载器加载类时先委托给其上级加载器,当所有祖宗类加载器都没有加载到类,回到发起者类加载器时,还没加载到类,抛出ClassNotFoundException异常。JavaBean:有set和get办法获得类属性特殊java类。用于传递数据信息。内省:IntroSpector,java语言对Javabean属性、事件某些缺省解决办法。Beanutils工具包注解:@Override表达当前办法是覆盖父类办法。@Deprecated表达当前元素是不赞成使用。@SuppressWarnings表达关闭某些不当编译器警告信息。Java系统默认三个类加载器:BootStrap,ExtClassLoader,AppClassLoader创立动态类实例对象:1、通过实现接口告诉要实现动态类要实现哪些办法。2、产生类字节码要有一种关联类加载器对象。3、执行代码对象InvocationHandler。代理:用Proxy类getProxyClass(classLoader,interface)获得动态类字节码文献。用反射获得构造器。用构造器newInstance()InvocationHandler接口对象做参数获得一种类对象。InvocationHandler对象重写pubicObjectinvoke(Objectproxy,Methodmethod,Object[]args)办法返回method.invoke(target,args)。创立动态代理对象环节:实现InvocationHandler接口创立自己调用解决器。重写invoke办法。用Proxy.newProxyInstance(classLoader,newClass[]{Interface.class},handler}办法获得代理类实例。Bank:NumberManager类:产生客户PrivateintlastNumber;PrivateList<Integer>queueNumber;intsynchronizedgenerateNewManager():产生新客户号码。客户线程调用。intsynchronizedfetchServiceNumber():取走客户号码。窗口线程调用。List是共享数据。需要互斥。NumberMachine类:号码管理器,采用单例设计模式 privateNumberManagercommonManager;用get()返回对象。 privateNumberManagerexpressManager;用get()访问。 privateNumberManagervipManager;用get()访问。EnumCustomerTypeCOMMON,EXPRESS,VIP;ServiceWindow类:窗口 privateintwindowId;窗标语码 enumCustomerTypetype; publicvoidstart()
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 五年级语文下册第五单元劳动5综合活动教案北师大版
- 职业病防护与人力资源管理试题及答案
- 2025版高考物理一轮复习第三章牛顿运动定律第2课时课时作业含解析
- 英语情商测试题及答案
- 西医临床临床实验技能试题及答案
- 南宁一模语文试题及答案
- 文化产业管理市场调研方法试题及答案
- 六年级语文下册第二组9和田的维吾尔教学实录新人教版
- 精神病的填空试题及答案
- 小学英语经典诗歌济慈每当我害怕素材
- 新生儿腹泻病护理查房
- 《免疫学检验》课程标准(含课程思政)
- 网络安全的前沿技术与趋势
- DB21-T 3135-2019菲律宾蛤仔浅海底播增殖技术规范
- 非车险销售培训课件
- VTE评估及护理预防
- 《往复活塞式压缩机》课件
- 半夏泻心汤抑制原发性肝细胞癌术后复发的临床应用研究演示稿件
- 2023诗词大会知识竞赛200题题库(含答案)
- TL226 大众试验测试标准
- 公路日常养护费-公路日常养护费用
评论
0/150
提交评论