可以在Java中覆盖私有(private)方法吗?如果不是,那么下面的代码是如何工作的?classBase{privatevoidfunc(){System.out.println("InBaseClassfuncmethod!!");};}classDerivedextendsBase{publicvoidfunc(){//IsthisaMethodOverriding..????System.out.println("InDerivedClassfuncmethod");}}classInheritDemo{publicstaticvoidmain(String[]args){De
可以在Java中覆盖私有(private)方法吗?如果不是,那么下面的代码是如何工作的?classBase{privatevoidfunc(){System.out.println("InBaseClassfuncmethod!!");};}classDerivedextendsBase{publicvoidfunc(){//IsthisaMethodOverriding..????System.out.println("InDerivedClassfuncmethod");}}classInheritDemo{publicstaticvoidmain(String[]args){De
这个问题对Java人来说可能听起来很奇怪,但如果你试着解释一下,那就太好了。这些天来,我正在清除一些Java的非常基本的概念。所以我来到Java的继承和接口(interface)主题。在阅读本文时,我发现Java不支持多重继承并且也理解,我无法理解为什么到处讨论钻石图形问题(创建钻石的至少4个类)来解释这种行为,可以我们仅使用3个类就无法理解这个问题。说,我有A类和B类,这两个类是不同的(它们不是公共(public)类的子类)但它们有一个公共(public)方法,它们看起来像:-classA{voidadd(inta,intb){}}classB{voidadd(inta,intb){
这个问题对Java人来说可能听起来很奇怪,但如果你试着解释一下,那就太好了。这些天来,我正在清除一些Java的非常基本的概念。所以我来到Java的继承和接口(interface)主题。在阅读本文时,我发现Java不支持多重继承并且也理解,我无法理解为什么到处讨论钻石图形问题(创建钻石的至少4个类)来解释这种行为,可以我们仅使用3个类就无法理解这个问题。说,我有A类和B类,这两个类是不同的(它们不是公共(public)类的子类)但它们有一个公共(public)方法,它们看起来像:-classA{voidadd(inta,intb){}}classB{voidadd(inta,intb){
我有一个类扩展了我需要覆盖的类,但我需要调用该类的父类。因为我不能调用super,因为那将执行直接父级获取父类的父级的最佳方法是什么?我确信这是一个基本问题,但我已经有一段时间没有做任何java了。classA{publicvoidmyMethod(){/*...*/}}classBextendsA{publicvoidmyMethod(){/*Anothercode*/}}classCextendsB{IneedtocallClassAhere{/*Anothercode*/}} 最佳答案 你不知道:它违反了封装。可以说“不,我不
我有一个类扩展了我需要覆盖的类,但我需要调用该类的父类。因为我不能调用super,因为那将执行直接父级获取父类的父级的最佳方法是什么?我确信这是一个基本问题,但我已经有一段时间没有做任何java了。classA{publicvoidmyMethod(){/*...*/}}classBextendsA{publicvoidmyMethod(){/*Anothercode*/}}classCextendsB{IneedtocallClassAhere{/*Anothercode*/}} 最佳答案 你不知道:它违反了封装。可以说“不,我不
我正在玩一些简单的重载覆盖规则,发现了一些有趣的东西。这是我的代码。packagecom.demo;publicclassAnimal{privatevoideat(){System.out.println("animaleating");}publicstaticvoidmain(Stringargs[]){Animala=newHorse();a.eat();}}classHorseextendsAnimal{publicvoideat(){System.out.println("Horseeating");}}此程序输出以下内容。animaleating这是我所知道的:由于我们有
我正在玩一些简单的重载覆盖规则,发现了一些有趣的东西。这是我的代码。packagecom.demo;publicclassAnimal{privatevoideat(){System.out.println("animaleating");}publicstaticvoidmain(Stringargs[]){Animala=newHorse();a.eat();}}classHorseextendsAnimal{publicvoideat(){System.out.println("Horseeating");}}此程序输出以下内容。animaleating这是我所知道的:由于我们有
我的所有Activity(ActivityBase)都有一个基类,它本身派生自android.app.Activity。在onCreate中,我想根据当前正在执行的子类执行一些条件逻辑。如果SomeCustomActivity和AnotherCustomActivity都扩展了ActivityBase,我如何在父类(ActivityBase)中确定哪个二是当前正在执行的? 最佳答案 在某些情况下,父类中的这一行就可以解决这个问题。它返回“子”类(不是父类)的名称:this.getClass().getName()//Stringli
我的所有Activity(ActivityBase)都有一个基类,它本身派生自android.app.Activity。在onCreate中,我想根据当前正在执行的子类执行一些条件逻辑。如果SomeCustomActivity和AnotherCustomActivity都扩展了ActivityBase,我如何在父类(ActivityBase)中确定哪个二是当前正在执行的? 最佳答案 在某些情况下,父类中的这一行就可以解决这个问题。它返回“子”类(不是父类)的名称:this.getClass().getName()//Stringli