JAVA语言复习基础6 抽象类

抽象类:

(1)定义:

抽象类指的是在类中定义方法,而不去实现它,而在它的子类中去具体实现,继承抽象类的子类必须实现父类的抽象方法,除非子类是一个被定义的抽象类。

(2)特点:

1、抽象类不可以实例化。
2、继承一个抽象类,必须要实现抽象类中的抽象方法。

(3)好处(为什么要用抽象类):

抽象类是一个模板,防止子类忘记复写父类的抽象方法

(4)补充

抽象类里可以没有抽象方法,但包含抽象方法的类必须被声明为抽象类
抽象类里可以包含构造方法,但构造方法不能声明为抽象方法

抽象方法:

(1)定义:

抽象方法就是用abstract来修饰的方法,这种方法只声明返回的数据类型、方法名称和所需的参数,没有方法体。也就是说抽象方法只要声明,不要实现。

(2)特点:

关键字:abstract
抽象方法没有方法体。

abstract 关键字,和哪些关键字不能共存。
final:被final修饰的类不能有子类(不能被继承)。而被abstract修饰的类一定是一个父类(一定要被继承)。
private: 抽象类中的私有的抽象方法,不被子类所知,就无法被复写。 而抽象方法出现的就是需要被复写。
static:如果static可以修饰抽象方法,那么连对象都省了,直接类名调用就可以了。可是抽象方法运行没意义。

抽象类和抽象方法 代码示例

abstract class Person{
        /**
         * 抽象类
         */
        private String name;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        abstract void study();
    }



    class Student extends Person{

        @Override//重写 study抽象方法
        void study() {
            System.out.println("学习抽象方法");

        }

    }

public class AbstractDemo {
    public static void main(String[] args) {
        Student stu = new Student();   
        stu.setName("张三");
        System.out.print(stu.getName()+"在");
        stu.study();
    }

}

/*
 * 运行结果 :张三在学习抽象方法
 * 
 * */
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值