欢迎来到天天文库
浏览记录
ID:36209423
大小:1.80 MB
页数:48页
时间:2019-05-07
《java基础-第三天(进阶)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Java基础–J2SE(3)新一站开发部孟凡军目录13Java语言Java语法Java进阶2内容大纲程序员应知——破窗与童子军军规代码规范设计模式中文编码泛型、反射线程池正则表达式加解密程序员应知——破窗与童子军军规程序员应知——破窗与童子军军规代码规范Java编码规范:是常用代码习惯不是语法要求但是需要严格遵守代码规范写干净整洁的代码删除没有使用的类引用(Ctrl+Shilft+O)格式化代码(Ctrl+Shilft+F)删除废弃的老代码(Ctrl+D)请不要在两个地方出现完全相同的代码(重用)命名类,方法,变量慎用简写拆分大
2、的类,大的方法(500,50)2、注释使用注释来解释代码的意图,它们不应作为代码的翻译编写高质量的代码——从命名入手编写高质量的代码——从命名入手设计模式设计模式(Designpattern):是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式和框架设计模式-要素模式是一条由三个部分组成的通用规则:它表示了一个特定环境、一类问题和一个解决方案之间的关系。设计模式要素名称:助记、交流问题:先决条件解决方案:了解设计的组成成分效果:应用的
3、效果、权衡、影响为什么要提倡"DesignPattern"呢?根本原因是为了代码复用,增加可维护性。那么怎么才能实现代码复用呢?OO界有前辈的几个原则:"开-闭"原则(OpenClosedPrincipal)、里氏代换原则、合成复用原则。设计模式就是实现了这些原则,从而达到了代码复用、增加可维护性的目的。设计模式-原则1、"开闭"原则2、里氏代换原则3、合成复用原则4、依赖倒转原则5、接口隔离原则6、抽象类7、迪米特法则常用的设计模式单例模式简单工厂模式代理模式策略模式观察者模式模板方法模式职责链模式装饰模式工厂方法模式设计模式
4、-书中文编码为什么要编码?常见的有ASCII、ISO-8859-1、GB2312、GBK、UTF-8、UTF-16几种编码格式的比较GB2312与GBKUTF-16与UTF-8编码转换I/O操作中存在的编码InputStreamReader、OutputStreamWriter内存中操作中的编码:字符到字节的数据类型的转换常见问题分析中文变成了看不懂的字符字符串在解码与编码字符集不一致导致汉字变成了看不懂的乱码,而且是一个汉字字符变成两个乱码字符。一个汉字变成一个问号将中文和中文符号经过不支持中文的ISO-8859-1编码后,所
5、有字符变成了“?”,这是因为用ISO-8859-1进行编解码时遇到不在码值范围内的字符时统一用3f表示,这也就是通常所说的“黑洞”,所有ISO-8859-1不认识的字符都变成了“?”。一个汉字变成两个问号中文经过多次编码,但是其中有一次编码或者解码不对仍然会出现中文字符变成“?”现象。内容回顾程序员应知——破窗与童子军军规代码规范设计模式中文编码泛型、反射Java泛型理解Java泛型应用Java泛型编程Java反射机制理解Java反射机制理解Java的动态代理自学内容熟悉设计模式应用场景编码规范中文编码转换Java泛型在Java
6、SE1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”;泛型是JavaSE1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。Java泛型:规则和限制Java泛型:泛型类语法泛型类的语法说明:使用来声明一个类型持有者名称,就可以把T当作一个类型代表来声明成员、参数和返回值类型。T仅仅是个名字,这个名字可以自定义。声明classGenericsFoo声明了一个泛型类,这个T没有任
7、何限制,实际上相当于Object类型,实际上相当于classGenericsFoo。使用与Object泛型类相比,使用泛型所定义的类在声明和构造实例的时候,可以使用“<实际类型>”来一并指定泛型类型持有者的真实类型。比如GenericsFoodouFoo=newGenericsFoo(newDouble("33"));当然,也可以在构造对象的时候不使用尖括号指定泛型类型的真实类型,但是你在使用该对象的时候,就需要强制转换了。比如:GenericsFoodouFoo=
8、newGenericsFoo(newDouble("33"));实际上,当构造对象时不指定类型信息的时候,默认会使用Object类型,这也是要强制转换的原因。Java泛型应用示例/**DAO操作基类:本DAO层实现了通用的数据操作*@paramPOJO实体
此文档下载收益归作者所有