大家好,又见面了,我是全栈君。
这一节我们来学习抽象类
抽象类–深入讨论
抽象类是java中一个比較重要的类。
1、用abstract关键字来修饰一个类时。这个类就是抽象类。
2、用abstract关键字来修饰一个方法时,这种方法就是抽象方法。
3、abstract抽象类中的abstract抽象方法是不同意在抽象类中实现的。一旦实现就不是抽象方法和抽象类了。abstract抽象方法仅仅能在子类中实现。
4、抽象类中能够拥有实现方法。
5、抽象方法在编程中用的不是非常多,可是在公司笔试时,却是考官比較爱问的知识点。
抽象类–注意事项
1、抽象类不能被实例化
2、抽象类不一定要包括abstract方法。也就是说。抽象类能够没有abstract抽象方法。
3、一旦类包括了abstract抽象方法,则这个类必须声明为abstract抽象类。
4、抽象方法不能有主体。
正确的抽象方法例:abstract void abc();
错语的抽象方法例:abstract void abc(){}
package abstractclass;
public class Abstractclass {
public static void main(String[] args) {
// TODO 自己主动生成的方法存根
//Animal an=new Animal();抽象类不同意实例化
Animal an=new Cat();
an.cry();
an.sx();
an=new Dog();
an.cry();
an.sx();
}
}
//抽象类abstract关键词
abstract class Animal{
String name;
int age;
//动物会叫,使用了abstract抽象方法
abstract public void cry();//抽象类中能够没有abstract抽象方法
//抽象类内能够有实现方法
public void sx(){
System.out.println("实现方法");
}
}
//当一个子类继承的父类是abstract抽象类的话,须要程序猿把抽象类的抽象方法所有实现。
class Cat extends Animal{ //实现父类的cry。事实上相似上节学习中的子类覆盖父类 public void cry(){ System.out.println("猫猫叫"); } } class Dog extends Animal{ //实现父类的cry。事实上相似上节学习中的子类覆盖父类 public void cry(){ System.out.println("汪汪叫"); } }
下一节我们来讲一下接口类,而且希望能在抽象类和接口类上进行比較
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/116144.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...