JAVA获取对象的四种⽅式
1.使⽤new创建对象
2.通过反射的⽅式
java反射获取父类属性3.通过clone的⽅式
4.通过反序列化的⽅式
⼀.使⽤new创建对象
使⽤new会增加耦合度,所以要尽量减少使⽤new的频率。并且new是使⽤强引⽤⽅式来创建对象的。Hello hello = new Hello();
⼆.使⽤反射的⽅式创建对象
1.使⽤Class类的newInstance⽅法来创建对象
Class class = Class.forname("st.Hello");
Hello hello = (wInstance();
2.使⽤Constructor类的newInstance⽅法来创建兑现
Class class = Class.forName("st.Hello");
Constructor constructor = Constructor();
Hello hello = (wInstance();
三.使⽤clone的⽅式创建对象
前提:需要有⼀个对象,使⽤该对象⽗类的clone⽅法可以创建⼀个内存⼤⼩跟它⼀样⼤的对象
Hello hello1 = new Hello();
Hello hello2 = (Hello)hello1.clone();
四.使⽤反序列化的⽅式创建对象
在通过实现序列化serializable接⼝将对象存到硬盘中,通过反序列化可以获取改对象
public class Serialize
{
public static void main(String[] args)
{
Hello h = new Hello();
//准备⼀个⽂件⽤于存储该对象的信息
File f = new File("hello.obj");
try(FileOutputStream fos = new FileOutputStream(f);
ObjectOutputStream oos = new ObjectOutputStream(fos);
FileInputStream fis = new FileInputStream(f);
ObjectInputStream ois = new ObjectInputStream(fis)
)
{
//序列化对象,写⼊到磁盘中
oos.writeObject(h);
//反序列化对象
Hello newHello = (adObject();
//测试⽅法
newHello.sayWorld();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
catch (ClassNotFoundException e)
{
e.printStackTrace();
}
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论