每日总结

Java中子类与基类变量间的赋值:

子类对象可以直接赋给基类变量。

基类对象要赋给子类对象变量,必须执行类型转换, 其语法是:

子类对象变量=(子类名)基类对象名; 也不能乱转换。

如果类型转换失败Java会抛出以下这种异常: ClassCastException

public class TestInstanceof
{
public static void main(String[] args)
{
//声明hello时使用Object类,则hello的编译类型是Object,Object是所有类的父类
//但hello变量的实际类型是String
Object hello = "Hello";
//String是Object类的子类,所以返回true。
System.out.println("字符串是否是Object类的实例:" + (hello instanceof Object));
//返回true。
System.out.println("字符串是否是String类的实例:" + (hello instanceof String));
//返回false。
System.out.println("字符串是否是Math类的实例:" + (hello instanceof Math));
//String实现了Comparable接口,所以返回true。
System.out.println("字符串是否是Comparable接口的实例:" + (hello instanceof Comparable));
String a = "Hello";
//String类既不是Math类,也不是Math类的父类,所以下面代码编译无法通过
//System.out.println("字符串是否是Math类的实例:" + (a instanceof Math));
}
}

原文地址:https://www.cnblogs.com/lxywsx/p/14179503.html