简述java中继承的概念,单继承,访问修饰符的访问权限

简介: 简述java中继承的概念,单继承,访问修饰符的访问权限

什么是继承extends?:

继承是一种机制,通过继承机制,子类可以使用父类中属性和方法

父类----子类 一般 —特殊

父类:子类的共性抽象出来

子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法。


如果子类能够访问父类的d属性和方法,即是子类从父类中继承的属性和方法

(哪些属性和方法能被继承取决于子类能否突破父类的边界)

子类能够继承父类哪些内容???

构造方法不可被继承

原因:i.构造方法名必须和类名保持一致

ii. 子类中的内容要比父类中要多,构造过程相对父类较复杂,

需要子类有自己的构造方法

  属性和方法能否被继承,取决于访问修饰符
                            本类       同包子类    非同包子类     其他  
    private(私有的)          √           ×            ×            ×
    default(默认的)          √           √            ×            ×
    protected(受保护的)      √           √            √            ×
    public(公开的)           √           √            √            √
    从严到宽
    i.所有的访问修饰符都可以修饰方法、构造方法、属性
      只有 default、public 能够修饰类
    ii.继承性:
   - Private  私有的,本类内部  子类不能继承
   - Default  本类内部+同包 可以访问    同包子类可以继承
   - Protected  受保护的    本类内部+同包+不同包子类   子类可以继承
   - Public   公开的  不受边界约束   子类可以继承

继承关系下的对象创建过程:

①在继承关系下,去构建子类对象,会先去构建父类对象

②i.分配空间(父类+子类)

ii.构建父类对象(初始化父类属性+调用父类构造方法)

iii.初始化子类属性

iv.调用子类构造方法


下面用一个程序来详细解释一下继承的使用:

    class TestExtend{
        public static void main(String[] args) {
      Dog dog = new Dog();
    //dog类里面并没有eat()和sleep()方法,所以dog对象调用的是父类的吃和睡觉方法;
      dog.eat();
      dog.sleep();
        }
      }
      class Animal{ 
          public void eat(){
          System.out.println("吃吃吃");
        }
        public void sleep(){
          System.out.println("睡觉,睡10个小时");
        }
      }       
      class Dog extends Animal{
  //这里不定义任何方法,  
}

Java中 的单继承:


java中是单继承

但是是多级继承,属性和方法可以进行逐级叠加

一个类最多只能有一个直接父类;extends 只能放一个类的类名;

提现了java的简单性: 即类之间会行成简单的树状结构

目录
相关文章
|
9月前
|
Java 开发工具
【Azure Storage Account】Java Code访问Storage Account File Share的上传和下载代码示例
本文介绍如何使用Java通过azure-storage-file-share SDK实现Azure文件共享的上传下载。包含依赖引入、客户端创建及完整示例代码,助你快速集成Azure File Share功能。
616 6
|
9月前
|
Java 编译器 Go
【Java】(5)方法的概念、方法的调用、方法重载、构造方法的创建
Java方法是语句的集合,它们在一起执行一个功能。方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用方法的优点使程序变得更简短而清晰。有利于程序维护。可以提高程序开发的效率。提高了代码的重用性。方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头写,不使用连接符。例如:addPerson。这种就属于驼峰写法下划线可能出现在 JUnit 测试方法名称中用以分隔名称的逻辑组件。
379 4
|
11月前
|
存储 安全 Java
java: 无法访问org.springframework.ldap.core.LdapTemplate
java: 无法访问org.springframework.ldap.core.LdapTemplate
280 9
|
12月前
|
存储 缓存 NoSQL
java 集合入门基础理论的核心概念与实用长尾知识
本文介绍了Java集合框架的基础理论知识,包括单列集合(List、Set、Queue)和双列集合(Map)的特点及常用实现类(如ArrayList、HashSet、HashMap等)。详细讲解了集合的遍历方式(迭代器、增强for循环、Lambda表达式)和典型应用场景(如数据去重、键值存储等)。通过具体代码示例,帮助初学者理解集合框架的核心概念和实际应用,为Java编程中的数据存储与管理提供基础指导。
356 0
|
存储 安全 Java
2025 年最新 40 个 Java 基础核心知识点全面梳理一文掌握 Java 基础关键概念
本文系统梳理了Java编程的40个核心知识点,涵盖基础语法、面向对象、集合框架、异常处理、多线程、IO流、反射机制等关键领域。重点包括:JVM运行原理、基本数据类型、封装/继承/多态三大特性、集合类对比(ArrayList vs LinkedList、HashMap vs TreeMap)、异常分类及处理方式、线程创建与同步机制、IO流体系结构以及反射的应用场景。这些基础知识是Java开发的根基,掌握后能为后续框架学习和项目开发奠定坚实基础。文中还提供了代码资源获取方式,方便读者进一步实践学习。
3096 2
|
缓存 Java 数据库
Java 访问修饰符使用方法与组件封装方法详细说明
本文详细介绍了Java中访问修饰符(`public`、`private`、`protected`、默认)的使用方法,并结合代码示例讲解了组件封装的核心思想与实现技巧。内容涵盖数据封装、继承扩展、模块化设计与接口隔离等关键技术点,帮助开发者提升代码的可维护性与安全性,适用于Java初学者及进阶开发者学习参考。
269 1
|
分布式计算 Java 大数据
Java 语言基础概念与常识之主要特点解析
Java是一种广泛应用于企业级开发、移动应用(如Android)、大数据处理及云计算等领域的编程语言。其核心特点包括跨平台性(一次编写,到处运行)、面向对象设计、自动垃圾回收、多线程支持和高性能表现。Java通过JVM实现跨平台,具备强大的健壮性和安全性,同时拥有丰富的标准库与活跃的开发者社区。本文深入解析Java的技术优势及其在电商系统、大数据处理和云计算中的实际应用,并提供相关面试资料供学习参考。
388 0
|
存储 算法 安全
Java对象创建和访问
Java对象创建过程包括类加载检查、内存分配(指针碰撞或空闲列表)、内存初始化、对象头设置及初始化方法执行。访问方式有句柄和直接指针两种,前者稳定但需额外定位,后者速度快。对象创建涉及并发安全、垃圾回收等机制。
193 0
Java对象创建和访问