首页 > 编程语言 >Java面向对象继承

Java面向对象继承

时间:2023-04-06 23:31:43浏览次数:32  
标签:Java 继承 ...... public 面向对象 extends 父类 class

继承的概念

继承是面向对象编程中的一个概念,它允许一个类(称为子类或派生类)继承另一个类(称为父类或基类)的属性和方法。子类在继承父类的同时也可以添加自己的属性和方法,从而实现代码的复用和扩展。继承是面向对象编程的三大特征之一,其他两个分别是封装和多态。

继承的作用

1.提高代码的复用性:通过继承,子类可以直接使用父类的属性和方法,不需要重复定义。

2.便于代码的扩展:通过在子类中添加新的属性和方法,实现了代码的扩展。

3.提高代码的可维护性:将公共的属性和方法放在父类中,可以减少重复的代码,从而方便代码维护和升级。

继承关键字

extends关键字

在 Java 中,类的继承是单一继承,也就是说,一个子类只能拥有一个父类,所以 extends 只能继承一个类。

implements关键字

使用 implements 关键字可以变相的使java具有多继承的特性,使用范围为类继承接口的情况,可以同时继承多个接口(接口跟接口之间采用逗号分隔)。

super 与 this 关键字

super关键字:对父类成员的访问;this关键字:调用自己的方法。

继承类型

//extends 单继承
public class A{......}
public class B extends A{......}

//extends 多重继承
public class A{......}
public class B extends A{......}
public class C extends B{......}

//extends 不同类继承同一个类
public class B extends  A{......}
public class C extends A{......}

//implements 多继承
public interface A {......}
public interface B {......} 
public class C implements A,B {......}

类的继承格式

在 Java 中通过 extends 关键字可以申明一个类是从另外一个类继承而来的,一般形式如下:

class 父类 {
}
 
class 子类 extends 父类 {
}

实例

// 父类 Animal
class Animal{
    String name;

    public void setName(String name) {
        this.name = name;
    }

    public void eat() {
        System.out.println(name + "正在吃");
    }
}

// 子类 Dog 继承自 Animal
class Dog extends Animal {
    public void bark() {
        System.out.println(name + "正在叫");
    }
}

public class Test {
    public static void main(String args[]) {
        Dog dog = new Dog();
        dog.setName("旺财"); // 设置狗的名字为旺财
        dog.eat(); // 继承自父类 Animal,输出:旺财正在吃
        dog.bark(); // 子类添加的方法,输出:旺财正在叫
    }
}

标签:Java,继承,......,public,面向对象,extends,父类,class
From: https://blog.51cto.com/jiubana1/6174267

相关文章

  • day01_Java语言概述
    对第一个java程序进行总结java程序编写-编译-运行的过程编写:我们将编写的java代码保存在以".java"结尾的源文件中编译:使用javac.exe命令编译我们的java源文件。格式:javac源文件名.java运行:使用java.exe命令解释运行我们的字节码文件。格式:java类名在一个java源文件中......
  • 万字详解 | Java 流式编程
    概述StreamAPI是Java中引入的一种新的数据处理方法。它提供了一种高效且易于使用的方法来处理数据集合。StreamAPI支持函数式编程,可以让我们以简洁、优雅的方式进行数据操作,还有使用Stream的两大原因:在大多数情况下,将对象存储在集合中就是为了处理它们,因此你会发现你把......
  • Java方法
    Java方法Java方法是语句的集合,它们在一起执行一个功能。方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就是一个方......
  • Django笔记十八之save函数的继承操作和指定字段更新等实例方法
    本文首发于微信公众号:Hunter后端原文链接:Django笔记十八之save函数的继承操作和指定字段更新等实例方法这篇笔记主要介绍Django一些实例方法。什么是实例,我们知道通过filter()的一些筛选方法,得到的是QuerySet,而QuerySet取单条数据,通过索引,或者first()或者last()等......
  • Java基础知识点(抽象类)
    封装:对象代表什么,就得封装对应的数据,并提供数据对应的行为。一:抽象方法和抽象类的定义将共性的行为(方法)抽取到父类之后,由于每一个子类执行的内容是不一样,所以,在父类中不能确定的具体的方法体,该方法就可以定义为抽象方法。抽象类:如果一个类中存在抽象方法,那么该类就必须声明抽象类。......
  • Java基础知识点(抽象类)
    封装:对象代表什么,就得封装对应的数据,并提供数据对应的行为。一:抽象方法和抽象类的定义将共性的行为(方法)抽取到父类之后,由于每一个子类执行的内容是不一样,所以,在父类中不能确定的具体的方法体,该方法就可以定义为抽象方法。抽象类:如果一个类中存在抽象方法,那么该类就必须声明抽象类。......
  • Java character类
    character类转义序列:转义序列描述\ttab,在文中插入一个tab键\bback,在文中插入一个后退键\nnext,在文中插入一个换行\renter,在文中插入一个回车键\f在文中插入换页符\'在文中插入单引号\''在文中插入双引号\\在文中插入反斜杠  ......
  • java.nio.charset.MalformedInputException: Input length = 1
    将nacos作为配置中心时,发现加载nacos内容时报错:java.nio.charset.MalformedInputException:Inputlength=1后来发现,将项目统一为utf-8后,正常启动。 ......
  • Java多线程之共享资源和同步
    一、竞争条件所谓竞争条件,即两个或更多的任务竞争响应某个条件,因此产生冲突或不一致结果的情况。IntGenerator.java生成一个整数:publicabstractclassIntGenerator{privatevolatilebooleancanceled=false;(1)publicabstractintnext();(2)public......
  • 学习Java Day1
    尝试用Effie记录一下学习的java过程。2023.4.6-一些电脑的快捷键 -win+E打开我的电脑 -shift+delete永久删除文件-一些打开cmd的方法 -win+R(最常用)输入cmd -桌面其他位置+鼠标右键打开powershell -win找到windows系统打开命令提示符-一些cmd中的指令 -盘符切换......