今天小编给大家分享一下java Object转byte与byte转Object的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
今天实现一下如何从Object去转为byte和如何从byte转为Object。
首先,定义一个类student:
package com.byteToObject; import java.io.Serializable; public class student implements Serializable{ private int sid; private String name; public int getSid() { return sid; } public void setSid(int sid) { this.sid = sid; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
然后定义转换的主要方法,主要利用流进行转换:
package com.byteToObject; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; public class Main { public static void main(String[] args) throws IOException, ClassNotFoundException { student stu = new student(); stu.setSid(123); stu.setName("wanger"); ByteArrayOutputStream byam = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(byam); oos.writeObject(stu); byte[] bytes = byam.toByteArray(); System.out.println(bytes.toString()); ByteArrayInputStream bais = new ByteArrayInputStream(bytes); ObjectInputStream ois = new ObjectInputStream(bais); student s = (student)ois.readObject(); System.out.println(s.getName()); } }
转换结束。
@SuppressWarnings("unchecked") public List<T> findByConditions(String hql,Object... conditions) throws Exception{ Session session = getSessionFactory().getCurrentSession(); Query query = session.createQuery(hql); for (int i = 0; i < conditions.length; i++) { query.setParameter(i, conditions[i]); } return query.list(); }
Object是所有类的基类,这个你可以查询jdk文档了解,所有类都继承自Object。
Object ...objects(称为可变个数的形参)这种参数定义是在不确定方法参数的情况下的一种多态表现形式。即这个方法可以传递多个参数,这个参数的个数是不确定的。这样你在方法体中需要相应的做些处理。因为Object是基类,所以使用Object ...objects这样的参数形式,允许一切继承自Object的对象作为参数。这种方法在实际中应该还是比较少用的。
Object[] obj这样的形式,就是一个Object数组构成的参数形式。说明这个方法的参数是固定的,是一个Object数组,至于这个数组中存储的元素,可以是继承自Object的所有类的对象。
以上就是“java Object转byte与byte转Object的方法是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。