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

深圳东门地铁站叫什么天河门户网

深圳东门地铁站叫什么,天河门户网,汕头市php网站建设,旅游网站开发工程师目录 引出类什么时候被加载JVM中创建对象几种方式1.new 看到new : new Book()2.反射 Class.forName(“包名.类名”)如何获取Class对象【反射的基础】案例#xff1a;连接数据库方法 3.克隆#xff08;拷贝#xff09;clone浅拷贝深拷贝案例 序列化和反序列化对象流-把对象存… 目录 引出类什么时候被加载JVM中创建对象几种方式1.new 看到new : new Book()2.反射 Class.forName(“包名.类名”)如何获取Class对象【反射的基础】案例连接数据库方法 3.克隆拷贝clone浅拷贝深拷贝案例 序列化和反序列化对象流-把对象存储为dat文件 总结 引出 1.类什么时候被加载到JVM中newClass.forName: Class.forName(“包名.类名”) 2.创建对象的方式反射本质是获得类的类对象Class 3.克隆clone深拷贝浅拷贝的对比 4.序列化和反序列化的方式 类什么时候被加载JVM中 Hello h; // 此时没有用Hellojvm并没有进行类加载 看到new : new Book()Class.forName: Class.forName(“包名.类名”)类加载器 package com.tianju.auth.reflect;public class HelloTest1 {public static void main(String[] args) throws ClassNotFoundException {Hello h; // 此时没有用Hellojvm并没有进行类加载System.out.println(**********);new Hello(); // new 的时候会加载到内存中System.out.println(**********);Class.forName(com.tianju.auth.reflect.Hello);} }package com.tianju.auth.reflect;public class Hello {static {System.out.println(hello);}public Integer count(Integer a,Integer b){return ab;}public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException {int a 3;Class? aClass Hello.class; // ?泛型的写法Class? aClass1 Class.forName(com.tianju.auth.reflect.Hello);Class? extends Hello aClass2 new Hello().getClass();System.out.println(aClass);System.out.println(aClass1);System.out.println(aClass2);Hello o (Hello) aClass.newInstance();int count o.count(1, 2);System.out.println(count);} }创建对象几种方式 1.new 看到new : new Book() 2.反射 Class.forName(“包名.类名”) 一个类会产生一个唯一的Class对象JVM底层原理 Car.java 编译成 Car.clase 类加载到 JVM 中加载时还没有创建对象 进入JVM中给类Car创建单独的唯一的对象Class 类该Class对象中存储了Car类的一些必要信息没有记录相关的值 以Class对象生产成多个Car对象通过Class类映射出多个Car对象 如何获取Class对象【反射的基础】 对象.getClass()类.classClass.forName(“包名.类名”) 案例连接数据库方法 类加载采用了反射的方式 采用枚举方式封装JDBC单例 方法程序 package com.tianju.util;import java.sql.*; import java.util.Objects;/*** 采用枚举单例封装数据库*/ public enum DbUtilEnum {INSTANCE;private Connection conn;private PreparedStatement pst;private ResultSet rs;private DbUtilEnum() {// 注册驱动-类加载register();}/*** 第一步注册驱动类加载*/private void register(){try {Class.forName(com.mysql.cj.jdbc.Driver);} catch (ClassNotFoundException e) {throw new RuntimeException(e);}}// 建立数据库连接// 192.168.0.134:3306// root123/*** 第二步建立数据库连接* param ipAdress ip地址端口号* param user 用户名root* param password 密码123*/public void connect(String ipAdress,String user,String password){String url jdbc:mysql://ipAdress/emp_db?useSSLfalseserverTimezoneAsia/ShanghaiallowPublicKeyRetrievaltrue;try {conn DriverManager.getConnection(url,user,password);System.out.println(成功连接数据库ipAdress);} catch (SQLException e) {throw new RuntimeException(e);}}/*** 第三步准备SQL语句* param sql sql语句*/public void setPreparedStatement(String sql, Object...values){try {pst conn.prepareStatement(sql);// 逐个填充 ? 处的空缺for (int i0;ivalues.length;i){pst.setObject(i1, values[i]);}} catch (SQLException e) {throw new RuntimeException(e);}}/*** 第四步增加删除修改*/public void executeUpdate(){try {pst.executeUpdate();System.out.println(执行增删改操作);} catch (SQLException e) {throw new RuntimeException(e);}}/*** 第四步查询ResultSet调用next()方法* return 返回查询的ResultSet*/public ResultSet executeQuery(){try {rs pst.executeQuery();System.out.println(执行查询操作返回结果);return rs;} catch (SQLException e) {throw new RuntimeException(e);}}/*** 第五步关闭连接*/public void close(){try {if (Objects.nonNull(rs)){rs.close();}if (Objects.nonNull(pst)){pst.close();}if (Objects.nonNull(conn)){conn.close();}System.out.println(操作完成关闭数据库连接);} catch (SQLException e) {throw new RuntimeException(e);}} } 3.克隆拷贝clone 继承的时候可以将子类的访问控制符扩大但不能缩小子类不得比父类抛出更多更大的异常。浅拷贝、深拷贝问题 浅拷贝 // protected代表本包或者继承// 继承的时候可以将子类的访问控制符扩大但不能缩小// 子类不能比父类抛出更多的异常Overridepublic Object clone() throws CloneNotSupportedException {return super.clone();}深拷贝 public Book deepClone(){Book book new Book();Author au new Author();au.setName(author.getName());book.setAuthor(au);book.setTitle(this.title);book.setPrice(this.price);return book;}案例 Author.java实体类 package com.tianju.auth.reflect;import lombok.Data;Data public class Author {private String name; }Book.java实体类 implements Cloneable{ // 可以克隆的 package com.tianju.auth.reflect;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;Data NoArgsConstructor AllArgsConstructor public class Book implements Cloneable{ // 可以克隆的private String title;private Author author;public double price;static {System.out.println(book的静态代码块);}// protected代表本包或者继承// 继承的时候可以将子类的访问控制符扩大但不能缩小// 子类不能比父类抛出更多的异常Overridepublic Object clone() throws CloneNotSupportedException {return super.clone();}public Book deepClone(){Book book new Book();Author au new Author();au.setName(author.getName());book.setAuthor(au);book.setTitle(this.title);book.setPrice(this.price);return book;} } 进行测试 package com.tianju.auth.reflect;public class TestDemo{public static void main(String[] args) throws CloneNotSupportedException {Author author new Author();author.setName(吴承恩);Book book new Book(三国演义, author,12.56);Book book1 book;System.out.println(book1book);// 两个引用是否指向同一个对象// clone创建了一个新的对象只是值一样Book bookClone (Book) book.clone();// 深拷贝创建了新的对象上面的浅拷贝只是拷贝了引用Book deepClone book.deepClone();System.out.println(bookClonebook);System.out.println(克隆前book);System.out.println(克隆后bookClone);author.setName(小柯基);System.out.println(修改后的原对象book);System.out.println(修改后的clone对象bookClone);// 深拷贝System.out.println(***********);System.out.println(深拷贝的方法deepClone);} } 序列化和反序列化 对象流-把对象存储为dat文件 要点 1实体类需要实现序列化接口 public class Car implements Serializable【标记接口】 2序列化的版本号最好不要写交给JVM实现要保证版本号一致 功能 ObjectOutputStream—-对象写入文件 serialVersionUID 在序列化的时候指定的编号 在反序列化时应该保证版本号一致。 案例把car类存储到dat文件中 1类需要实现序列化的接口 public class Car implements Serializable { // 需要实现序列化的接口// 序列化的版本号不要写交给jvm实现保证读的和写的对象实体类要一样 // private static final long serialVersionUID 2L;private Integer id;private String name;public Car() {} }2从内存写入硬盘文件为out用write ObjectOutputStream out new ObjectOutputStream(new FileOutputStream(D:\\Myprogram\\idea-workspace\\IOStrem\\IOStrem\\src\\com\\woniuxy\\resources\\car.dat)); // 存多个的解决方法存到List中 ListCar list new ArrayList(); list.add(new Car(1, BMW)); list.add(new Car(2, BYD)); list.add(new Car(3, BMW)); out.writeObject(list); // list也实现了Serializable out.flush(); out.close();3从硬盘读入内存为in用read ObjectInputStream in new ObjectInputStream(new FileInputStream(D:\\Myprogram\\idea-workspace\\IOStrem\\IOStrem\\src\\com\\woniuxy\\resources\\car.dat) ); // Car car (Car) in.readObject(); // 读对象向下转型 // System.out.println(car); ListCar list (ListCar) in.readObject(); System.out.println(list); list.forEach(car - System.out.println(car)); // list的lamda表达式 list.forEach(System.out::println); // 上面的简化写法 in.close(); // 记得关闭总结 1.类什么时候被加载到JVM中newClass.forName: Class.forName(“包名.类名”) 2.创建对象的方式反射本质是获得类的类对象Class 3.克隆clone深拷贝浅拷贝的对比 4.序列化和反序列化的方式
文章转载自:
http://www.morning.dfkmz.cn.gov.cn.dfkmz.cn
http://www.morning.xflzm.cn.gov.cn.xflzm.cn
http://www.morning.xptkl.cn.gov.cn.xptkl.cn
http://www.morning.ldmtq.cn.gov.cn.ldmtq.cn
http://www.morning.lgxzj.cn.gov.cn.lgxzj.cn
http://www.morning.xzlp.cn.gov.cn.xzlp.cn
http://www.morning.nwtmy.cn.gov.cn.nwtmy.cn
http://www.morning.jgttx.cn.gov.cn.jgttx.cn
http://www.morning.wbfg.cn.gov.cn.wbfg.cn
http://www.morning.wfykn.cn.gov.cn.wfykn.cn
http://www.morning.rynqh.cn.gov.cn.rynqh.cn
http://www.morning.fhykt.cn.gov.cn.fhykt.cn
http://www.morning.ljllt.cn.gov.cn.ljllt.cn
http://www.morning.zxhhy.cn.gov.cn.zxhhy.cn
http://www.morning.phwmj.cn.gov.cn.phwmj.cn
http://www.morning.zrgsg.cn.gov.cn.zrgsg.cn
http://www.morning.tdqhs.cn.gov.cn.tdqhs.cn
http://www.morning.xfmzk.cn.gov.cn.xfmzk.cn
http://www.morning.thntp.cn.gov.cn.thntp.cn
http://www.morning.kfrhh.cn.gov.cn.kfrhh.cn
http://www.morning.ppqjh.cn.gov.cn.ppqjh.cn
http://www.morning.pzlhq.cn.gov.cn.pzlhq.cn
http://www.morning.tlrxp.cn.gov.cn.tlrxp.cn
http://www.morning.xmwdt.cn.gov.cn.xmwdt.cn
http://www.morning.wnhml.cn.gov.cn.wnhml.cn
http://www.morning.czcbl.cn.gov.cn.czcbl.cn
http://www.morning.kaakyy.com.gov.cn.kaakyy.com
http://www.morning.dxgt.cn.gov.cn.dxgt.cn
http://www.morning.kttbx.cn.gov.cn.kttbx.cn
http://www.morning.bpmtz.cn.gov.cn.bpmtz.cn
http://www.morning.mlwpr.cn.gov.cn.mlwpr.cn
http://www.morning.lwygd.cn.gov.cn.lwygd.cn
http://www.morning.qhrdx.cn.gov.cn.qhrdx.cn
http://www.morning.hsksm.cn.gov.cn.hsksm.cn
http://www.morning.jcrlx.cn.gov.cn.jcrlx.cn
http://www.morning.jhtrb.cn.gov.cn.jhtrb.cn
http://www.morning.jgcyn.cn.gov.cn.jgcyn.cn
http://www.morning.mqbdb.cn.gov.cn.mqbdb.cn
http://www.morning.yprjy.cn.gov.cn.yprjy.cn
http://www.morning.kwqwp.cn.gov.cn.kwqwp.cn
http://www.morning.dfojgo.cn.gov.cn.dfojgo.cn
http://www.morning.zfhzx.cn.gov.cn.zfhzx.cn
http://www.morning.prjns.cn.gov.cn.prjns.cn
http://www.morning.lwqst.cn.gov.cn.lwqst.cn
http://www.morning.yrfxb.cn.gov.cn.yrfxb.cn
http://www.morning.iuibhkd.cn.gov.cn.iuibhkd.cn
http://www.morning.dzzjq.cn.gov.cn.dzzjq.cn
http://www.morning.rlbc.cn.gov.cn.rlbc.cn
http://www.morning.dbtdy.cn.gov.cn.dbtdy.cn
http://www.morning.qlsbz.cn.gov.cn.qlsbz.cn
http://www.morning.ykrck.cn.gov.cn.ykrck.cn
http://www.morning.fpkpz.cn.gov.cn.fpkpz.cn
http://www.morning.nhpmn.cn.gov.cn.nhpmn.cn
http://www.morning.bpds.cn.gov.cn.bpds.cn
http://www.morning.rkxqh.cn.gov.cn.rkxqh.cn
http://www.morning.rkjz.cn.gov.cn.rkjz.cn
http://www.morning.mbrbg.cn.gov.cn.mbrbg.cn
http://www.morning.pypbz.cn.gov.cn.pypbz.cn
http://www.morning.mqxzh.cn.gov.cn.mqxzh.cn
http://www.morning.yxmcx.cn.gov.cn.yxmcx.cn
http://www.morning.rmxk.cn.gov.cn.rmxk.cn
http://www.morning.rqkck.cn.gov.cn.rqkck.cn
http://www.morning.touziyou.cn.gov.cn.touziyou.cn
http://www.morning.tjpmf.cn.gov.cn.tjpmf.cn
http://www.morning.yrnll.cn.gov.cn.yrnll.cn
http://www.morning.ntwfr.cn.gov.cn.ntwfr.cn
http://www.morning.hnkkm.cn.gov.cn.hnkkm.cn
http://www.morning.lmzpk.cn.gov.cn.lmzpk.cn
http://www.morning.zcyxq.cn.gov.cn.zcyxq.cn
http://www.morning.ubpsa.cn.gov.cn.ubpsa.cn
http://www.morning.hcgbm.cn.gov.cn.hcgbm.cn
http://www.morning.mtqqx.cn.gov.cn.mtqqx.cn
http://www.morning.qwbtr.cn.gov.cn.qwbtr.cn
http://www.morning.kkjlz.cn.gov.cn.kkjlz.cn
http://www.morning.xbkcr.cn.gov.cn.xbkcr.cn
http://www.morning.jwgnn.cn.gov.cn.jwgnn.cn
http://www.morning.nbqwr.cn.gov.cn.nbqwr.cn
http://www.morning.nchsz.cn.gov.cn.nchsz.cn
http://www.morning.btmwd.cn.gov.cn.btmwd.cn
http://www.morning.lpskm.cn.gov.cn.lpskm.cn
http://www.tj-hxxt.cn/news/239681.html

相关文章:

  • 凡科建站的优势电子商务网站的建设流程
  • 迈肯奇迹做网站渠道查官网
  • 专业手表网站深圳开发公司网站建设比较好的
  • 现在的网站开发用什么技术长扬科技北京有限公司
  • 网站推广方法素材淄博做网站推广哪家好
  • 网站在哪里找建设网站制作
  • 高端网站建设报价郑州做网站哪家好熊掌号
  • 网站开发的后期维护网站开发音乐
  • 如何学做网站优化wordpress判断登录用户为vip
  • 哪个公司做网站好苏州网站群建设 实现了
  • 视频网站自己怎么做网络营销的网站建设报告
  • 个人怎么做网站施工合同
  • 织梦电子行业网站模板龙岗网站建设报价
  • 百度网站是怎么做的wordpress 手机 登陆不了
  • 低价自适应网站建设优化建站一个成功的网站必须具备哪几个要素
  • 网站建站管理青岛网络推广方案服务
  • 制作一个自适应网站跟犀牛云一样做网站的
  • 免费做婚礼邀请函的网站电商怎么入门
  • 福建建设监理网站如何做网站关键字优化
  • 副业做网站软件沈阳建设企业网站
  • 开发工程师网站开发工程师vi设计公司网站
  • 宣讲家网站生态文明建设深圳宝安做网站的公司
  • 无锡网站建设机构怎样做网站不花钱
  • 淘宝网站是怎么做的自媒体采集网站建设
  • 网站管理后台源码合肥seo排名收费
  • 卡盟网站顶图怎么做微信小程序可以做视频网站吗
  • 教育网站案例( )是网站可以提供给用户的价值
  • php网站模板开源网站克隆好后该怎么做
  • 建立英文网站在哪里学做网站
  • 网站建设开发哪个好学wordpress 登录页面变了