当前位置: 首页 > news >正文

it类网站河北省最大的网页设计公司

it类网站,河北省最大的网页设计公司,平面设计师必去的网站,泉州软件开发培训机构一、反射 1. 相关概念 (1) 类的对象#xff1a;基于定义好的一个类#xff0c;创建该类的实例#xff0c;即利用 new 创建的实例就为类的对象。 (2) 类对象#xff1a;类加载的产物#xff0c;封装了一个类的所有信息 ( 包名、类名、父类、接口、属性、方法、构造方… 一、反射 1. 相关概念 (1) 类的对象基于定义好的一个类创建该类的实例即利用 new 创建的实例就为类的对象。 (2) 类对象类加载的产物封装了一个类的所有信息 ( 包名、类名、父类、接口、属性、方法、构造方法 ) 。 (3) 反射通过反射可以获取一个类的 类对象从而获取该类的信息直接通过类对象进行一系列操作。 2. 通过反射技术获取类对象 (1) 借助 Object 类中 getClass() 方法通过 类的对象 获取 类对象 Student s new Student (); // 类的对象 Class c1 s.getClass(); // 类对象 (2) 通过 类名 .class 直接获取类对象 Class c2 类名 .class; 例如 Class c2 Student.class; (3) 通过 Class 类中静态方法 forName( 包名 . 类名 ) Class c3 Class.forName(test_flect.Student); 注意参数需要 包名 . 类名 被称为权限类名、全类名。 如果只给定了类名则运行报错错误信息为 java.lang.ClassNotFoundException( 类找不到异常 ) 补充类加载的时机。 (1) 第一次创建该类对象 (2) 第一次使用该类的静态成员 ( 静态属性和静态方法 ) (3) 子类类加载会导致其父类先进行类加载。 (4) 通过反射获取类对象会导致类进行类加载 3. 常用的方法 (1) getName(): 获取类名 (2) Method[] getMethods() 获取本类 父类中所有公开方法 (3) Method[] getDeclaredMethods() 获取自身所有方法包含非公开的方法。 (4) 通过 类对象 创建 类的对象 Class c Class . forName ( test_flect.Student ); // 类对象 Object obj c . newInstance (); // 类对象 获取 类的对象 注意 Class 类中 newInstance() 方法获取类的对象默认调用无参数的构造方法。 所以开发时对于封装的实体类建议提供无参数的构造方法。 没有提供对应构造方法创建对象时报错信息为 java.lang.InstantiationException (5) 通过有参数的构造方法获取类的对象 // 获取 类对象 Class c Class . forName ( test_flect.Student ); // 获取有参数的构造方法 Constructor constructor c . getConstructor ( String . class , Integer . class ); // 通过有参数的构造方法获取 类的对象 Object o constructor . newInstance ( 万青 , 48 ); System . out . println ( o ); (6) 调用某个方法 Method m c . getDeclaredMethod ( test ); m . setAccessible ( true ); m . invoke ( o ); 4. 反射的优缺点 (1) 缺点可读性差代码繁琐打破封装。 (2) 优点可以使代码更加通用和灵活。通常用于底层架构例如框架等。 二、设计模式 (23 种 ) 1. 设计模式一套被反复使用多人知晓并分门别类的编目的一套代码经验总结。 2. 适配器模式详见接口课后题目。 3. 单例设计模式常见的一种开发设计模式在 Java 应用程序中 , 必须保证 JVM 内部仅存在该类的一个实例对象。 (1) 第一种实现方式饿汉式 // 第一种实现模式饿汉式 class ClassA { private static final ClassA ca new ClassA (); private ClassA (){} // 提供 public static ClassA getInstance (){ return ca ; } } 优点线程并发效率高 缺点空间利用率较低 (2) 第二种实现方式懒汉式 // 第二种实现方式懒汉式 class ClassB { private static ClassB cb ; private ClassB (){} public synchronized static ClassB getInstance (){ if ( cb null ){ cb new ClassB (); } return cb ; } } 优点空间利用率较高 缺点线程并发效率低 (3) 基于前两种的优缺点提供第三种方式 // 第三实现方式 class ClassC { private ClassC (){} private static class Inner { final static ClassC c new ClassC (); } public static ClassC getIntsance (){ return Inner . c ; } } 4. 工厂设计模式 (1) 工厂设计模式用于解决程序中对象创建的问题一个工厂的作用在于完成对象的创建。 (2) 开发时通常借助反射的技术使工厂通用、灵活。 (3) 扩充 Properties: 是 Hashtable 的子类即 Map 的实现类 a. Properties: 键和值默认为 String 类型创建该类对象时不要添加泛型。 b. load(InputStream in) / load(Reader in) 自动将流指向文件内容进行加载一行代表一个集合元素 自动以 、 : 进行拆分符号 左侧作为键的内容右侧作为值的内容 c. String getProperty(String key) 通过键获取对应的值
http://www.hkea.cn/news/14453998/

相关文章:

  • 网站宣传页面做家教网站要多少钱
  • 邢台网站设计哪家专业曲靖网站微信建设
  • 郑志平爱站网创始人诸城网站建设葛小燕
  • 苏州网站建设凡科wordpress添加文章
  • 英文都不懂 学网站建设维护难吗一凡招聘 建筑人才网
  • 段友做的看电影网站合肥专业网站设计公司价格
  • 品牌网站建设堅持大蝌蚪开发一个网站要多久
  • 厦门市建设局网站咨询电话门户网站和微网站的区别
  • 软件开发培训去哪报名做移动网站优化首
  • 建设一个连接的网站wordpress销售主题
  • 服装网站html模板招聘网站上还要另外做简历吗
  • 微网站app制作实木餐桌椅网站建设公司
  • 沈阳网站建设那家好云南省城乡住房建设厅网站
  • 青岛物流公司网站建设连云港优化推广
  • 做seo时网站更新的目的专业做公墓 陵园的网站
  • 抚顺网站网站建设浦江县建设局网站
  • 佛山网页网站制作高柏企业管理咨询有限公司
  • 抖音平台建站工具北京网站定制建设
  • 录像网站怎么做ppt模板包含哪些内容
  • 广州网站制作开发公司设计网站可能遇到的问题
  • 国内建网站公司深圳兼职做网站
  • 做网赌需要在哪些网站投广告网站开发职业生涯规划范文
  • 美德的网站建设网站建设捌金手指花总二九
  • 有哪些做外贸的网站天津专业做网站公司
  • 青岛公司网站设计自助建站系统源码 资源网
  • 济南槐荫网站开发公司教学网站在线自测功能怎么做
  • 自己怎么开发网站百度搜国外服务器Wordpress
  • 民非企业网站建设费怎么记账php免费网站系统
  • 深圳建设银行网站首页网络营销是什么意思啊
  • 建材 东莞网站建设个人做淘宝客网站好做吗