首页 > 编程语言 >毕设学习第三天之Java的特性

毕设学习第三天之Java的特性

时间:2025-01-09 21:54:48浏览次数:1  
标签:毕设 Java 继承 子类 第三天 抽象类 父类 方法 public

extends(继承)

继承就是一个类继承另一个类的变量和方法,被继承的类为父类,继承的类为子类,java中的继承机制为单继承,即一个子类只能继承一个父类,但一个父类可被多个子类继承,子类无法访问父类的私有成员

子类可以继承和重写父类的成员方法,但注意子类无法继承父类的构造方法,同时子类无法重写父类的私有和静态方法,java中要求子类重写的方法权限要大于父类的方法权限,public>protected>默认>private,子类在重写时要保证参数和方法名完全和父类一致,返回值为父类返回值的同类或者子类

继承中的两个关键字super和this

super指代父类,this指代当前类对象

子类在初始化时要先初始化父类使用super调用父类的构造函数实现

父类 对象 = new 子类

口诀成员变量看等号左边类,成员方法看右边类,即对象调用的方法优先为等号右边子类的方法,而对象访问的变量则是优先父类的默认变量值

如果我们想要重写父类的私有成员可使用super调用父类set和get方法或许有参构造

 

abstract(抽象)

抽象类无法实例化即无对象,有抽象方法的类都是抽象类,但是抽象类里面不一定有抽象方法,抽象方法没有方法体,子类继承必须得重写抽象方法,否则子类也为抽象类,抽象类可以有成员变量,成员方法和构造函数,抽象类的构造函数

 

interface(接口)

接口是一个引用数据类型,实现由关键字implements,接口的构成如下

jdk7以及之前
抽象方法: public abstract -> 即使不写public abstract,默认也有
成员变量:public static final 数据类型 变量名 = 值->即使不写public static final,默认也有
final是最终的,被final修饰的变量不能二次赋值,所以我们一般将final修饰的变量视为常量


jdk8
默认方法:public default 返回值类型 方法名(形參){}
静态方法:public static 返回值类型 方法名(形参){}

接口中可包含抽象方法,默认方法和静态方法,其中默认方法和静态方法可有方法体,成员变量需要final修饰,不同于继承,一个类可以实现多个接口,一个接口也可以被多个类实现,且若多个接口中有相同的方法,子类只需实现一次

多态

父类 对象 = new 子类,父类一般为抽象类或者接口,通过不同的的子类,父类会调用相同的方法不同的实现这就是多态,父类对象中方法随其赋值的子类改变而改变,但父类无法直接调用子类特有的方法,口诀也是变量成员看左,方法成员看右

多态的好处是增加了程序的扩展性,例如对于接电话这个方法,不同的人的有不同的动作,有人会接听,有人会挂断,有人会挂机等待,如果不采用多态需要增加多个方法

继承只能单继承,接口实现可以多实现,多态为父类引用子类对象,必须有方法的重写

标签:毕设,Java,继承,子类,第三天,抽象类,父类,方法,public
From: https://www.cnblogs.com/liyiyang/p/18660637

相关文章

  • 【实用技巧】【探讨】Java 中比较两个对象的差异
    1 前言大家平时写业务代码的时候,应该能感知到哪些是基础配置数据,哪些是实例数据。比如营销里的活动信息、促销信息就属于配置型数据,基于活动带来的订单参与活动信息属于实例数据。比如一些规则信息、流程信息等类似一种版本的概念。那么版本跟版本之间的差异、以及创建新版本的......
  • flask框架汽车票网上预订系统毕设源码+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于汽车票网上预订系统的研究,现有研究多侧重于传统票务系统的信息化改造或者大型交通枢纽的综合票务管理。专门针对汽车票网上预订系......
  • Java工程师必学的Linux知识点
    一、Linux基础知识1.Linux概述1.1Linux发行版Linux发行版(Distributions)是基于Linux内核构建的操作系统,通常包含内核、系统工具、应用软件和包管理器。常见的发行版包括:CentOS:企业级发行版,基于RedHatEnterpriseLinux(RHEL),稳定性高,常用于服务器环境。Ubuntu:用户友好,社......
  • 2025最全Java八股文(完整版)
    问:抽象类和接口有什么区别呢?从方法编写方面,抽象类中可以抽象方法和普通方法,而接口中只能编写抽象方法。从继承和实现方面,抽象方法只能继承一个类并且可以实现多个接口,而接口可以继承多个接口。在变量的定义方面,接口只能定义静态变量,抽象类可以定义普通变量和静态变量。问:fi......
  • flask框架商城积分系统毕设源码+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景随着电子商务的蓬勃发展,商城积分系统在国内外的电商平台中都占据着重要地位。关于商城积分系统的研究,现有研究主要集中在积分的基本功......
  • flask框架硕士研究生院校报考推荐系统的设计与实现毕设源码+论文
    校园二手货物交易平台m1a2o本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于硕士研究生院校报考推荐系统的研究,现有研究主要集中在研究生教育的宏观层面,如招生政策、教育质量评估......
  • flask框架甜品购物网站毕设源码+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于甜品购物网站的研究,现有研究主要集中在大型综合购物平台中的食品板块,专门针对甜品购物网站这种细分领域的研究较少。在国内外,大型......
  • Java集合面试题集——2025最新大厂面试
    1.集合框架2. ArrayList和LinkedList2.1 源码分析成员变量<spanstyle="color:#000000"><spanstyle="background-color:#282c34"><codeclass="language-java"><spanstyle="color:#5c6370">//Defaultinitial......
  • 小九源码-springboot002-Java财会信息管理系统的分析
    ......
  • [Java] 计算Java对象大小
    序在Java应用程序的性能优化场景中,时常需要考虑Java对象的大小,以便评估后,进一步提出优化方案:占用内存的大小。(比如本地内存)对象数据在网络传输中占用的网络带宽对象数据在存储时占用的磁盘空间...概述对象大小如何计算对象大小包括俩部分的内容,对象头和对象内容:......