首页 > 编程语言 >java学习日记20230325-抽象类

java学习日记20230325-抽象类

时间:2023-03-24 23:03:39浏览次数:49  
标签:20230325 java 声明 abstract 抽象 修饰 抽象类 方法

抽象类:

  • 当父类的某些方法需要声明,但是又不确定如何实现时,可以将其声明为抽象方法,那么这个类就是抽象类!
  • 所谓抽象方法,就是没有实现的方法;
  • 当一个类中存在抽象方法时,需要将该类声明为Abstract类;
  • 一般来说,抽象类会被继承,由其子类进行重写;

 

  用abstract来修饰一个类时,这个类就是抽象类;

  访问修饰符 abstract 类名{}

  用abstarct来修饰一个方法时,这个方法就是抽象方法

  访问修饰符 abstarct 返回类型 方法名(参数列表)

  抽象类的价值更多在于设计,时设计者设计好的,并通过子类进行实现;

  抽象类在框架和设计模式中使用较多

 

  抽象类使用细节:

  • 抽象类不能被实例化;
  • 抽象类不一定包含抽象方法,抽象类可以没有抽象方法
  • 一旦类包含了abstract方法,则该类一定是抽象类
  • abstract只能修饰属性和方法,不能修饰属性和其他的
  • 抽象类可以有任意成员,非抽象方法,构造器,静态属性等;
  • 抽象方法不能有方法主体;
  • 如果一个类继承了抽象类,则它必须实现抽象类中的所有抽象方法,除非他自己也声明为抽象类;
  • 抽象方法不能使用static,final,private来修饰,这些关键字都和重写冲突;

 

标签:20230325,java,声明,abstract,抽象,修饰,抽象类,方法
From: https://www.cnblogs.com/DragonJack/p/17253516.html

相关文章

  • Java面试-基础篇(一)6
    synchronized与ReentrantLock的区别说到synchronized与ReentrantLock,我们都知道,他们是java并发编程很重要的技术。他们可以帮助我们保证编程过程中数据的正确性,也就是我们......
  • 编写一个方法,计算给定两个数组之和---Java
    要求返回的数组是两个惨呼数组对应元素之和,不对应的元素直接赋给相应的位置packagepractice.people.apple;/**//编写一个计算给定的两数组之和**/publicclassS......
  • java学习日记20230324-final关键字
    final可以修饰类,方法,属性和局部变量当不希望类被继承时,用final修饰类当不希望父类某个方法被子类重写时,使用final当不希望某个属性值被修改时当不希望某个局部变量被......
  • JavaScript数值计算时精度问题处理
    js精度问题当使用JavaScript进行数值计算时,会面临一些精度问题,这些问题可能会导致不正确的结果。以下是一些常见的奇奇怪怪的js数据精度问题:1.浮点数精度问题在JS......
  • Java生产者消费者
    生产者消费者问题简介生产者消费者模式并不是GOF提出的23种设计模式之一,23种设计模式都是建立在面向对象的基础之上的,但其实面向过程的编程中也有很多高效的编程模式,生产......
  • java.lang.UnsupportedClassVersionError: (class file version 61.0), this version
     问题背景,新建5个springbootmodules。使用相同的依赖 pom.xml 文件。其中4 个工程正常启动。有一个如图:GulimallWareApplication 跑不起来。报错版本不对。本人机......
  • JavaScript 函数
    什么是函数?类似于Java中的方法,是完成特定任务的代码语句块;特点使用更简单,不用定义属于某个类,直接调用执行;常用系统函数使用JavaScript编程时,函数是一种非常有用的编程结构,用......
  • JavaScript BOM
    Window对象的常用属性属性名称说明history有关客户访问过的URL的信息location有关当前URL的信息screen只读属性,包含客户端显示屏幕的信息语法:window.属性名="属性值";w......
  • JavaScript DOM
    DOM简介JavaScriptDOM是指JavaScript中的文档对象模型(DocumentObjectModel);它允许JavaScript与HTML页面交互,使开发者可以通过编程方式动态地修改网页内容和样式,以......
  • JavaScript 面向对象
    类和对象类是用于定义对象的模板或蓝图;它包含对象的属性和方法,我们可以使用class关键字来定义类。classPerson{constructor(name,age){this.name=name;t......