JAVA OOP---继承

本文深入探讨Java中的继承概念,解释了子类如何继承父类的特征和行为,以及继承在面向对象编程(OOP)中的作用。文章详细介绍了继承的限制,包括不能继承的内容,如私有成员、构造方法等,以及访问修饰符和包的作用。
摘要由CSDN通过智能技术生成

继承

Java oop的另一个重要的知识点,是Java面向对象编程技术的一块基石,它允许创建分等级层次的类。继承是一种高级封装,而封装就是OOP的一个核心思想;

继承就是子类继承父类的特征和行为,这就要求在创建父类的特征时要能概括所有子类。反过来就是说子类有父类的特征,而每个子类又可以有自己不同于父类的特征。
注意:每个子类只能继承一个父类(后面要说的接口就可以实现多个)

(1)子类继承父类其实就是在子类创建时,在子类对象中创建了一个父类的对象。(这个对象是不外显的)

(2)子类不可以继承父类的一些内容
①私有的 private修饰的内容
②构造方法 Constructor (子类中只是调用,不是继承)
③非同包父类受保护类型 (可以用producted访问)
(3)访问修饰符和包进行的访问权限控制
在这里插入图片描述

(4)在系统默认的调取顺序中:
构造方法<普通的代码块<静态的代码块
输出是按:

父类静态代码块
子类静态代码块
父类普通代码块
父类构造方法
子类普通代码块
子类构造方法

(5)static:(静态)
①被static修饰的属性和方法称为类属性与类方法,无须对象,通过类名就可以访问。
②但是static在JVM 启动装载字节码文件过程中就会先创建所有的静态内容。当JVM关闭时static内容才会销毁。(存在时间在长,占用空间,这不符合OOP的思想)
③只有在使用频次高,且当前工程中许多类要使用时,我们才会选择将这个内容设定成静态。
④注意:静态方法只能访问静态属性和静态方法
(6)重写、重载
①重载:同一类中名称相同参数不同的方法

public void student(int a,boolean b){}
public void student(int a ){}

参数不同指的是参数列表的不同,在参数数量相同时,看参数类型;在参数类型相同时就看参数的数量。
②重写:子类重写父类同名、同参、同返回值的方法。

class Animal{
  public void move(){
    System.out.println("动物可以移动");
   }
}

class Dog extends Animal{
   public void move(){
   System.out.println("狗可以跑和走");
 }
}

这里的子类继承了父类,在调用move()方法时,参数列表相同(都为空),但方法中的代码块是不同的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值