父类中可继承方法在处理private的一个demo

public abstract class AbstractParent {
    public AbstractParent() {
        System.out.println("Hello,parent");
    }

    protected void earnMoney() {
        prepare();
        doJob();
    }

    protected abstract void doJob();

    private void prepare() {
        System.out.println("parent prepare");
    }
}

class Child extends AbstractParent {
    public Child() {
        System.out.println("Child init");
    }

    @Override
    protected void doJob() {
        System.out.println("Child do job");
    }

    public static void main(String[] args) {
        Child child = new Child();
        child.earnMoney();
    }
}

输出:

Hello,parent
Child init
parent prepare
Child do job

时间: 2024-07-30 13:42:29

父类中可继承方法在处理private的一个demo的相关文章

JS中的继承方法——组合继承介绍与实践

组合继承是原性链继承和构造函数继承的合体,它汲取了二者各自的有点,同时又互相补充了各自的弱点,是一种应用十分广泛的javascript继承模式.下面分别从原性链继承.构造函数继承分别开始介绍,最后介绍二者的结合--组合继承. 一.原型链:利用原型让一个引用类型继承另一个引用类型的属性和方法 每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针. 实现原性链的基本模式: function SuperType(){ this.property =

js 中的继承方法

1.原型链继承 核心: 将父类的实例作为子类的原型 function Cat(){ } Cat.prototype = new Animal(); Cat.prototype.name = 'cat'; // Test Code var cat = new Cat(); console.log(cat.name); console.log(cat.eat('fish')); console.log(cat.sleep()); console.log(cat instanceof Animal);

Java中子类继承了父类的私有属性及方法吗?

最近学习继承,从书中看到子类继承父类,子类拥有父类所有的属性和方法,于是使用程序去验证,发现父类的私有属性和私有方法,子类是不能访问的,当然一些父类的私有属性可能可以通过相应的方法访问到,但是私有的方法似乎不能简单的访问,这里暂不考虑Java反射机制,于是我分析,子类不能继承父类私有的属性及方法,但是分析了内存后,我发现我是错的,在一个子类被创建的时候,首先会在内存中创建一个父类对象,然后在父类对象外部放上子类独有的属性,两者合起来形成一个子类的对象.所以所谓的继承使子类拥有父类所有的属性和方法

JAVA中的继承

1.什么是继承 基于一个已存在的类,创建一个新的类.已存在的类即父类,新的类即子类,继承就是子类继承并拥有父类的属性和方法,同时,子类还有拥有父类所不具有的属性和方法. 父类,也称为基类.超类(superclass):子类,也称为派生类. 2.JAVA中"继承"的特点 JAVA中一个类只能继承一个父类.不像C++等语言那样,可以继承多个类.这也是JAVA比较容易学的一方面 只能继承父类中非private成员属性和方法,private是父类所特有的不能继承 3.JAVA中的"继

JAVA中构造器和方法的区别点

要学习Java,你必须理解构造器.因为构造器可以提供许多特殊的方法,这个对于初学者经常混淆.但是,构造器和方法又有很多重要的区别. 下面将简单介绍一下 ,最后用一个表作了些简单的总结. 功能和作用的不同构造器是为了创建一个类的实例.这个过程也可以在创建一个对象的时候用到:Platypus p1 = new Platypus(); 相反,方法的作用是为了执行java代码. 修饰符,返回值和命名的不同构造器和方法在下面三个方便的区别:修饰符,返回值,命名.和方法一样,构造器可以有任何访问的修饰: p

Java中的继承、封装、多态的理解

Java中的继承.封装.多态 继承的理解: 1.继承是面向对象的三大特征之一,也是实现代码复用的重要手段.Java的继承具有单继承的特点,每个子类只有一个直接父类. 2.Java的继承通过extends关键字来实现,实现继承的类被称为子类,被继承的类称为父类(有的也称其为基类.超类),父类和子类的关系,是一种一般和特殊的关系.就像是水果和苹果的关系,苹果继承了水果,苹果是水果的子类,水果是苹果的父类,则苹果是一种特殊的水果. 3.Java使用extends作为继承的关键字,extends关键字在

Java中关于继承、类、多态、接口的知识点

继承 含义:在面向对象编程中,可以通过扩展一个已有的类,并继承该类的属性和行为,来创建一个新的类 优点:1)代码的重用性:2)子类扩展父类的属性和方法:3)父类的属性和方法可用于子类:4)设计应用程序变得更加简单 继承的实现: 关键字extends:继承其ted他类,可以继承public,protected public class Salary extends Employee super关键字: 作用:调用父类中重写的方法 注意:调父类构造器是第一句可执行语句:默认情况下子类会调用父类的无参

菜鸟译文(一)——Java中的继承和组合

阅读英文的能力对于程序员来说,是很重要的.这几年也一直在学习英文,今天心血来潮,就在网上找了一篇简短的博文翻译一下.水平一般,能力有限,还请各位看官多多指点. 译文: 本文将会举例说明Java中继承和组合的概念.首先举一个继承的例子,然后展示一下如何用组合来改善继承的设计.最后概括一下如何在它们之间做出选择. 1. 继承 假设我们有一个Insect类.这个类包含两个方法:一个是move(),一个是attack(). class Insect { private int size; private

Java 中的继承

继承 如果一些类中含有相同的代码,那么可以将这些相同的代码提取到一个新的类中,然后通过extends关键字让原来的类和新的类产生关系 --- 继承. 通过继承,原来的类就称之为了子类(派生类),新的类就成了父类(超类/基类). 子类通过继承父类可以使用父类中的一部分方法和属性 注意:子类继承了父类的全部的数据域(方法+属性),但是继承之后只有一部分数据域对子类可见 在Java中,支持的是类和类之间的单继承 -> 一个子类只能继承一个父类,但是一个父类可以有多个子类 类的继承格式 在 Java 中