Java核心技术第五章——1.类、超类、子类(2)
继上一篇 Java核心技术第五章——1.类、超类、子类(1) 6.重载解析 假如调用ClassName.Method(args) 1.编译器列出类ClassName所有名为Method的方法。 2.编译器将查看调用方法提供的参数类型(args)。 3.根据参数类型匹配所有名为Method的方法。 4.如果编译器没有找到与参数类型匹配的方法,或者发现经过类型转换后有多个方法与之匹配,就会报告一个错误。 7.阻止继承:final类和方法。 1.final类:当你不希望别人利用某个类定义子类。那么则使用final去修饰类。此类则不允许扩展,称为final类。(final类的方法默认为final方法) 2.final方法:类中的方法也可以被声明为final。如果这样做,那么子类就不能覆盖这个方法(前提不是final类) 8.强制类型转换 例如 : double x = 6.66; int nx = (int) x; //转换成功 此表达式x的值转成整数类型,舍弃了小数部分。 例如: List<Object> obj = new ArrayList(); obj.add("hello"); obj.add(666); int i = (Integer)obj.get(0);//error 类型转换错误 ClassCastException 假如你不清楚obj数组引用的对象