javaabstract:java中的abstract基础学习

abstract作为修饰符可以修饰类和思路方法

1>.抽象类: 不能手动创建对象(JVM可以创建抽象类对象),但是可以声明抽象类型引用.
public TestAbstract1{
public void (String args){
//Animal a= Animal; //error

Animal a=null;
a= Dog;
}
}
abstract Animal{
}
Dog extends Animal{
}

2>.抽象思路方法:有思路方法名定义没有实现(只定义了能做什么没定义如何做)
抽象思路方法好处是允许思路方法定义和实现分开
abstract Animal{
public abstract void eat;
}

抽象类和抽象思路方法关系:含有抽象思路方法定是抽象类抽象类里不定含有抽象思路方法

抽象类存在意义是用来被继承个类继承了个抽象类必须实现抽象类里面所有抽象思路方法否则此类也是抽象类
abstract Animal{
public void run{}
public abstract void sleep;
public abstract void eat;
}
Dog extends Animal{
public void sleep{
.out.prln("Dog sleep.");
}
public void eat{
.out.prln("Dog eat.");
}
}
abstract Cat extends Animal{
public void eat{
.out.prln("Cat eat.");
}
}

可以声明父类类型子类对象利用多态抽象思路方法
public TestAbstract1{
public void (String args){
Animal a=null;
a= Dog;
a.sleep;
a.eat;
}
}

抽象类有构造思路方法有父类也遵循单继承规律
E{}
abstract Animal extends E{
public Animal{
super;
}
}

3>.多种修饰符连用问题: public protected default private final abstract
可以连用: public
private
public final
public final
不可以连用:abstract final void eat;
private abstract void eat;
abstract void eat;
abstract不能和finalprivate连用
Tags:  java学习 abstract java基础学习 javaabstract

延伸阅读

最新评论

发表评论