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

北京网站建设公司哪个最好wordpress农业站模板

北京网站建设公司哪个最好,wordpress农业站模板,wordpress 拼音插件,网站如何制作建设✅Java中创建对象的方式有哪些#xff1f; ✅使用New关键字✅使用反射机制✅使用clone方法✅使用反序列化✅使用方法句柄✅ 使用Unsafe分配内存 ✅使用New关键字 这是我们最常见的也是最简单的创建对象的方式#xff0c;通过这种方式我们还可以调用任意的构造函数 (无参的和有… ✅Java中创建对象的方式有哪些 ✅使用New关键字✅使用反射机制✅使用clone方法✅使用反序列化✅使用方法句柄✅ 使用Unsafe分配内存 ✅使用New关键字 这是我们最常见的也是最简单的创建对象的方式通过这种方式我们还可以调用任意的构造函数 (无参的和有参的) 。 User user new User(); ✅使用反射机制 运用反射手段调用Java.lang.Class或者Java.lang.reflect.Constructor类的newlnstance()实例方法。 1.使用Class类的newlnstance()方法 可以使用Class类的newlnstance方法创建对象。这个newlnstance方法调用无参的构造函数创建对象。 User user (User)Class.forlame(xxx.xxx.User).newInstance(); User user User.class .newInstance();2.使用Constructor类的newlnstance方法 和Class类的newInstance方法很像java.lang.reflect.Constructor类里也有一个newinstance()方法可以创建对象。我们可以通过这个newlnstance()方法调用有参数的和私有的构造函数。 Constructor constructor User.class.getConstructor(); User user constructor.newInstance();这两种newInstance()方法就是大家所说的反射。事实上Class的newlnstance()方法内部调用Constructor的newlnstance()方法。 ✅使用clone方法 无论何时我们调用一个对象的clone方法jvm就会创建一个新的对象将前面对象的内容全部拷贝进去。用clone方法创建对象并不会调用任何构造函数。 要使用clone方法我们需要先实现Cloneable接口并实现其定义的clone方法。如果只实现了Cloneable接口并没有重写clone方法的话会默认使用Obiect类中的clone方法这是一个native的方法。 public class CloneTest implements Cloneable {private String name;private int age;public String getName() {return name;}public void setName(string name) {this .name name;}public int getAge() {return age;}public void setAge(int age) {this .age age;}public CloneTest(String name, int age) {super();this .name name ;this .age age;}public static void main(Stringl] args) {try {CloneTest cloneTest new CloneTest(wangql,18);CloneTest copyClone (CloneTest) cloneTest.clone();System.out.println(newclone:cloneTest.getName());System.out.println(copyClone:copyClone.getName());} catch (CloneNotSupportedException e) {e.printstackTrace();}} }✅使用反序列化 当我们序列化和反序列化一个对象jvm会给我们创建一个单独的对象。其实反序列化也是基于反射实现的。 public static void main(Stringl] args) {//Initializes The ObjectUser1 user new User1();user.setName(Java);user.setAge(23);System.out.println(user);//Write Obj to FileObjectOutputStream oos null;try {oos new ObjectOutputStream(new FileOutputStream(tempFile));oos.writeObject(user);} catch (IOException e) {e.printStackTrace();} finally {IOUtils.closeQuietly(oos);}//Read Obj from FileFile file new File(tempFile);ObjectInputStream ois null;try {ois new ObjectInputStream(new FileInputStream(file));User1 newUser (User1) ois.readObject();System.out.println(newUser);} catch (IOException e) {e.printstackTrace();} catch (ClassNotFoundException e) {e.printstackTrace();} finally {IOUtils.closeQuietly(ois);try {FileUtils.forceDelete(file);} catch (IOException e) {e.printstackTrace();}} }✅使用方法句柄 通过使用方法句柄可以间接地调用构造函数来创建对象 public static void main(String [] args) throws Throwable {//定义构造函数的方法句柄类型为void类型无参数MethodType constructorType MethodType.methodType(void.class);//获取构造函数的方法句柄MethodHandles.Lookup lookup MethodHandles.lookup();MethodHandle constructorHandle lookup.findConstructor(User,class, constructorType);// 使用方法句柄调用构造函数创建对象User obj (User) constructorHandle.invoke(); }使用了MethodHandles.lookup().findConstructor()方法获取构造函数的方法句柄然后通过invoke()方法调用构造函数来创建对象。 ✅ 使用Unsafe分配内存 在Java中可以使用sun.misc.Unsate类来进行直接的内存提作包括内存分配和对象实例化。然而需要注意的是sun.misc.Unsafe类是Java的内部API它并不属于Java标准库的一部分也不建议直接在生产环境中使用。 public static void main(String[] args) throws Exception {Field field Unsafe.class.getDeclaredField(theUnsafe);field.setAccessible(true);Unsafe unsafe field.get(null);//获取User类的字段偏移量long nameOffset unsafe.objectFieldOffset(User.class.getDeclaredField(name));long ageOffset unsafe.objectField0ffset(User.class.getDeclaredField(age));//使用allocateInstance方法创建对象不会调用构造函数User user (User) unsafe.allocateInstance(User.class);// 使用putObject方法设置字段的值unsafe.putObject(user, nameOffset,Java);unsafe.putInt(user, ageOffset, 30); }这种方式有以下几个缺点 1 . 不可移植性Unsafe类的行为在不同的Java版本和不同的JVM实现中可能会有差异因此代码在不同的环境可能会出现不可移植的问题。 2 . 安全性问题Unsafe类的功能是非常强大和危险的可以绕过Java的安全机制可能会导致内存泄漏、非法访问、数据损坏等安全问题。 3 . 不符合面向对象的原则Java是一门面向对象的语言鼓励使用构造函数和工厂方法来创建对象以确保对象的正确初始化和维护对象的不变性。
http://www.dnsts.com.cn/news/139013.html

相关文章:

  • 佛山建网站价格企业广告
  • 阿里云网站地图是怎么做的网站需要写哪些内容吗
  • 用云空间制作网站wordpress 留言 seo no
  • 网站跳出率因素如何在自己电脑上建设网站
  • 买完域名以后怎么做网站wordpress 装饰公司
  • 专业网站建设分类标准wordpress 统计字数
  • 网站建设必须买数据库么如何做新网站
  • 知名网站用的技术wordpress调用分类目录文章
  • 建设银行信用卡卡网站怎样做可以连接服务器的网站
  • 加强网站政务服务建设微信小程序开发公司排名
  • 织梦 网站搬家常德建设网站
  • 湖南网络公司网站建设pc网站原型设计工具
  • 适合做网站的图片学编程的孩子有什么好处
  • 微信小程序+网站开发网站建设的总体设计思想
  • 泉州做网站优化的公司平台贷款无力偿还怎么办
  • 公司做网站需要给百度交钱吗正能量餐饮品牌设计
  • 湖南企业网站制作公司广东网站建站系统哪家好
  • 福州网站制作建设网站建设续费的回访话术
  • 建设京东商城网站先做网站还是先解析
  • 海外域名注册网站网站建设需求说明书怎么写
  • 个人做哪方面网站零售管理系统哪个软件好
  • 重庆h5网站建设模板网站制作器
  • 做网站用什么软件设计好河南5G网站基站建设信息
  • 博物馆网站建设方案报价评价一个网站
  • 一起做网站女装夏季裙网站流量渠道
  • 怎么把网站整站下载百度指数明星搜索排名
  • 株洲建设网站制作给网站做网络安全的报价
  • 刹车片图纸网站建设wordpress去掉文章rss
  • WordPress网站接入公众号成都设计公司哪家好
  • 怎么做卖车网站互联网 网站定制