抽象类

/*
抽象类:
1.方法只有声明没有实现是,该方法就是抽象方法,需要被abstract修饰.
    抽象方法必须定义在抽象类中.该类也必须用abstract修饰.
2.抽象类不可以被实例化.因为调用抽象方法没有意义.
3.抽象类必须有其子类覆盖了所有的抽象方法之后,该子类才可以实例化,否则这个子类还是抽象类,

抽象类中有构造函数吗?
    有,用于给子类对象进行初始化.

抽象类可以不定义抽象方法吗?
    可以.但是很少见,目的就是不让该类创建对象.AWT的适配器对象就是这种类.通常这个类中的方法有方法体,
但是没内容.
class Demo {
    void show1() ;  //没有方法体
    void show2(){}  //有方法体但是没内容
}

抽象关键字不可以和哪些关键字共存?
private 不可以.因为私有方法不能被覆盖.
static  不可以.静态方法不需要对象就能调用.但是调用抽象方法没有意义.
final   不可以.因为final修饰的类不可以被继承,并且final修饰的方法不可以被覆盖.

抽象类和一般类的区别.
相同点:
    抽象类和一般类都是用来描述事物的.都在内部定义了成员.
不同:
    1.一般类有足够的信息描述事物.
            抽象类描述事物的信息有可能不足.
    2.一般类中不能定义抽象方法,只能定义非抽象方法.
            抽象类中可以定义抽象方法.也可以定义非抽象方法.
    3.一般类可以被实例化.
            抽象类不可以被实例化.

抽象类一定是个父类吗?
    是的.因为需要子类覆盖其方法后才可以对子类实例化.
*/
public class AbstractDemo {

    public static void main(String[] args) {
        DemoA a = new DemoA() ;
        a.show();
        DemoB b = new DemoB() ;
        b.show();
    }

}

abstract class Demo {
    abstract void show() ; // abstract 抽象类关键字,抽象方法一定在抽象类中]
    void show2() {

    }
}

class DemoA extends Demo{
    void show() {
        System.out.println("demoa show");
    }
}

class DemoB extends Demo{
    void show() {
        System.out.println("demob show");
    }
}
Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计,皆可应用在项目、毕业设计、课程设计、期末/期/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值