数组扩容方法,多态

数组扩容

 (1) int[] arr2=new int[arr1.length*2]   //新数组长度

        for(int i=0;i<arr1.length;i++){     //复制
            arr2[i]=arr1[i];
        }
(2) int[] arr2=java.util.Arrays.copyOf(原数组名,新数组长度);

(3) int[] arr2=new int[arr1.length*2]
        System.arraycopy(原数组名,起始下标,新数组名,起始下标,复制长度);
(4)	用Arraylist类方法

多态的要点:

1.多态是方法的多态,不是属性的多态(多态与属性无关)

2.多态存在要有3个必要条件:继承、方法重写、父类引用指向子类对象。

3.父类引用指向子类对象后,用该父类引用调用子类重写的方法,此时多态就出现了。

多态是方法的多态(使用时用equal方法判断传入的对象是否是我们想传入的对象),多态的使用要注意对象的类型转换,只能父类引用指向子类对象,不能子类引用指向别的子类对象**

package com.jackfujia.oo2;
/**
 * 测试多态
 * @author Administrator
 *
 */
public class TestPolym {
    public static void main(String[] args) {
        Animal a = new Animal();
        animalSay(a);
        
        Dog d = new Dog();
        animalSay(d);
        
        Cat t = new Cat();
        animalSay(t);
    }
    
    //多态的关键,通过父类的引用调用子类重写的方法。
    static void animalSay(Animal a) {
        a.say();
    }
}

class Animal{
    public void say() {
        System.out.println("说话了");
    }
}
class Dog extends Animal{
    public void say() {
        System.out.println("狗说话了");
    }
}
class Cat extends Animal{
    public void say() {
        System.out.println("猫说话了");
    }

你可能感兴趣的:(数组扩容方法,多态)