java-JAVA子类不能继承父类私有方法是么

问题描述

JAVA子类不能继承父类私有方法是么

父类都不能用他本身的私有方法,子类岂不是更不能用了,这一点是怎么证明的?举个例子

解决方案

父类本身的私有方法是可以被自己的其他方法调用的,但是这些私有方法子类是不能调用的,但是可能被间接调用。
例如下面的例子,父类的私有方法被一个公有方法调用了,那么子类继承这个公有方法后也就间接调用了父类的私有方法了。但是子类可直接访问的方法里却没有这个私有方法的。

 public class Parent {
    public void say(){
        call();
    }

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

}
public class ParentSon extends Parent{
    public static void main(String[] args) {
        ParentSon son = new ParentSon();
        son.say();
    }

}

解决方案二:

私有就是为了不对外暴露,如果想被子类使用,设置成protect就可以了

解决方案三:

其實我的理解是被繼承的,只是不被使用:如
class A{public int i = 0;}
class B extends A{public int i = 1;}
class C{
public static void main(String[] args){
A a = new B();
System.out.print(a.i);
}
}
你會發現儘管是A的引用B的對象,應該調用的是1,但是卻是0,可以推出其實是在B中也是有A的空間.
同樣其實在子類中也有基類的private方法,但僅僅被限制不能使用而已.而且父類肯定能過使用其自身的private方法,這點你需要弄清楚,不管是private域還是方法

解决方案四:

Java 继承 父类变量, 方法 与子类的关系:
在java中父类调用子类中的方法
java 子类重写父类的方法

解决方案五:

父类的私有方法只可以在父类的内部使用,通过对象是没法调用的。但可以被子类继承,而子类不能直接访问这个私有方法。

解决方案六:

既然是私有,肯定是不能让别人用,不然和共有还有什么区别??

解决方案七:

私有的肯定是不能被继承的。私有就是自己能用。

解决方案八:

private为私有属性,所以只能被本类使用,其他类不能使用和访问

时间: 2024-12-02 09:06:14

java-JAVA子类不能继承父类私有方法是么的相关文章

重写-JAVA中子类覆盖了父类的方法,是否还有办法通过子类调用父类同一方法?

问题描述 JAVA中子类覆盖了父类的方法,是否还有办法通过子类调用父类同一方法? JAVA中子类覆盖了父类的方法,是否还有办法通过子类调用父类同一方法? 解决方案 使用super.methodName();调用. Java中super关键字指代的是父类. this关键字指代的是自身. 解决方案二: 用super.方法名调用 解决方案三: 试试super.xxx 解决方案四: 直接用super.方法名调用对应的方法

利用java反射机制调用类的私有方法(推荐)_java

试想一下,如果你可以轻易地调用一个类的私有方法,那么是不是说你的封装都失效了?最近在看java的反射机制,发现居然可以利用java的反射机制去调用其他类的私有方法,至于这能干什么,那就见人见智了.. 我写的一段简易实例代码如下: import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; /** * @author thomaslwq * @version 创建时间:Sep 4, 201

子类能够继承父类封装的属性吗 谢谢大家

问题描述 子类能够继承父类封装的属性吗在java中 解决方案 解决方案二:能,包括私有...只不过不能访问而已解决方案三:Java语言规范:http://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.2Membersofaclassthataredeclaredprivatearenotinheritedbysubclassesofthatclass.Onlymembersofaclassthataredeclaredpro

c++与java中子类中调用父类成员的方法

java中: import java.util.Scanner; public class ClassTest{ public static void main(String args[]){ child ch=new child(2); parent p=ch; p.print(); //p.print2();//调用错误,父类中没有改成员方法,该方法只属于子类! } } class parent{ int xx; parent(int x){ xx=x; } void print(){ Sy

为什么子类能够间接调用父类的私有方法

问题描述 子类的对象是不能直接调用父类的私有方法,但是却可以间接调用,求大家解答!代码如下classFather{publicFather(){System.out.println("Father");}privatevoidhello(){System.out.println("hello");}publicvoidsayHello(){System.out.println(thisinstanceofSon);this.hello();}}publicclass

java继承-java关于子类继承的问题

问题描述 java关于子类继承的问题 在java中子类可以继承父类的对象吗 子类都可以继承父类的哪些功能 解决方案 令人费解的java继承问题java笔试问题(继承)java 中 集合类相关问题 解决方案二: 继承父类对象是什么意思?子类继承父类所有的属性和方法. 解决方案三: 子类当然可以继承父类,继承,顾名思义,就是子类拥有父类的所有方法和属性,此外,在子类中还可以定义一些父类中没有的方法,.当子类继承父类后, 可以直接调用父类的方法.不用再去创建,定义.这样,大大增加了代码的重用率,提高了

父类私有字段问题

问题描述 classanimal{privateStringname;publicanimal(Stringname){this.name=name;}publicStringgetName(){returnname;}}classcatextendsanimal{publiccat(Stringn){super(n);}}classtest{publicstaticvoidmain(String[]args){catc=newcat("猫");System.out.println(c

android java 继承父类里的子类问题!!!!!!!

问题描述 android java 继承父类里的子类问题!!!!!!! 请问各位,java可以继承父类的方法和全部属性,那父类里的子类可以继承使用么? android 可以继承父类的Handler.广播么??

java getclass-父类私有方法的getClass输出了子类的类名

问题描述 父类私有方法的getClass输出了子类的类名 类 TestCode public class TestCode { private String entityClass = getEntityClass(); private String getEntityClass(){ System.out.println(getClass()); System.out.println(getClass().getGenericSuperclass()); //Type trueType = (