1 抽象类
abstract class Canine extends Animal
{}
1.抽象类不能被初始化。
2.抽象类除了被继承之外,是没有用途,没有值,没有目的的。
2 抽象方法
1.抽象的方法没有实体。
public abstract void eat();
2.不能在非抽象类中拥有抽象方法。
3.具体类中必须实现所有抽象的方法。
3 对象之母 Object
1.Java中所有类都是从Object这个类继承出来的。
2.没有直接继承过其他类的类会是隐含的继承对象。
(1)equals(Object o)
(2)getClass()
(3)hashCode()
(4)toString()
3.当某个对象是以Object类型来引用时,Java会把它当作Object类型的实例。这代表你只能调用由Object类中声明的方法。
4.任何从ArrayList< Object >取出的东西都会被当作Object 类型的引用不管它原来是什么类型。
5.转换回原来的类型
Object o = al.get(index);
Dog d = (Dog) o;
d.roam();
4 接口
接口用来解决多重继承的问题。
继承接口的类必须实现接口的所有方法。
接口的方法带有public和abstract的含义,修饰符可不需要。
public interface Pet
{
public abstract void beFrirndly();
public abstract void play();
}
public class Dog extends Canine implements Pet
{
public void beFriendly(){...};
public void play(){...};
}