java Object转byte与byte转Object方式

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());        
    }
}

转换结束。

java中Object...的用法是什么意思?

@SuppressWarnings("unchecked")  
    public List 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的所有类的对象。

这些基础东西应该多看几遍"Think in java"。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(java Object转byte与byte转Object方式)