java子类是否继承父类私有的属性

如题所述

不被继承。可参考官方到答案http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html
子类中有父类的私有属性,但是不能访问。也就是不可见。
  代码是这样的:
public class Test {
public static void main(String[] args) { //在这个地方设置一个断点
Dog dog=new Dog();
}
}
class Animal{
private String name="zhangsan";
private void show(){

}
}
class Dog extends Animal{
public void eat(){

}
}
用debug启动这个程序,点击下一步:
 就可以查看dog的属性,它里面就有一个属性值:
 dog
name"zhangsan" (id=21)
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-02-11
子类继承父类的所有(包括私有属性),但是却不能调用父类的私有属性,父类私有的属性方法等子类都不能调用,所以子类里用的getname()在父类里是public的。这是java的一个特性,叫封装
第2个回答  推荐于2017-10-13
当然不能!
想要获得父类的私有属性的话,生成一个父类的对象,然后指向父类的属性。本回答被提问者采纳
第3个回答  2012-11-18
不会继承,子类只会继承父类公有和保护类型的属性和方法
第4个回答  2012-11-18
public class 父亲{
private int 父亲的变量;

public 父亲(int 父亲的变量){
this.父亲的变量=父亲的变量;

}

....忽略get set 方法......

}
public class 儿子 extends 父亲{
public 儿子(int 儿子的变量){
super( 儿子的变量);
}
}
你看看只要你愿意就可以吧!追问

但是子类并没有这个属性啊,我想知道子类继承父类私有的属性但不能访问,还是说并不继承父类的私有属性

追答

你自己测试下,创建一个子类实例对象,然后调用父类的set get方法。看看 你能控制吗?能控制了,你说他拥有了父类的私有属性吗?

追问

好像不能,还是父类的

本回答被网友采纳

子类可以继承父类的私有属性吗
Java只支持单继承,不支持多继承。因为多继承容易带来安全隐患:当多个父类定义相同的功能,当功能内容不同的时候,子类对象不确定要运行哪一个,在Java中用另一种形式体现出来,就是接口的多实现。1、父类的任何成员变量都是会被子类继承下去的。子类继承父类,子类拥有了父类的所有属性和方法。父类...

java 子类有没有继承父类的私有属性和私有方法
这个问题很经典,实际上,java的子类是继承了父类的私有成员的,但是,私有之所以为私有,就是只能在本类中使用,子类也不例外,所以最后的现象就是java子类没法使用父类的私有成员,面试可以说清楚,但是笔试的简单填空或者判断题,就当不能继承咯!

Java中子类能继承父类的私有属性吗
另外,当父类的方法或属性被声明为private(私有的)时,子类也是不可以继承的。2、继承是JAVA中一个重要的特色,便于程序的编写,提高代码的重用性。

关于java继承的描述错误的是
子类可以继承父类的所有公有和受保护方法,如果父类有任何私有方法,则不能被继承。子类不能继承父类的所有字段:这也是错误的。子类可以继承父类的所有公有和受保护字段,除非它们是私有的并且没有提供公共访问器(getter和setter方法)。子类不能覆盖父类的所有方法:这是正确的。如果子类需要覆盖父类...

JAVA中子类能不能继承父类的私有属性和方法?
JAVA中,子类可以继承父类的私有属性和方法,但一般不能直接访问,但通过反射还是可以访问的:import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;public class A extends B{ public void set(int x...

继承:子类可以继承父类的私有成员变量吗
java子类可以继承父类除了private属性(私有属性)以外所有的属性变量。子类继承父类时,需要注意以下三点:1、在子类继承父类的时候,子类必须调用父类的构造函数。2、如果父类有默认构造函数,子类实例化时自动调用,但如果父类没有默认构造函数,即无形参构造函数,子类构造函数必须通过super调用父类的...

JAVA中,子类将继承父类的所有属性和方法么~?为什么?
是的,子类将继承父类的非私有的属性和方法。在JAVA中,子类继承父类的所有方法和属性(构造方法要用关键super([参数])调用);继承是JAVA中一个重要的特色,便于程序的编写,提高代码的重用性。1、如果给子类i提供get和set 通过get调用的自然是子类的。2、如果给父类和子类分别提供get和set,调的...

Java中子类能够继承父类的private属性或方法吗
程序验证,父类的私有属性和方法子类是无法直接访问的。当然私有属性可以通过public修饰的getter和setter方法访问到的,但是私有方法不行。假设:子类不能够继承父类的私有属性和方法 那么:分析内存后,会发现,当一个子类被实例化的时候,默认会先调用父类的构造方法对父类进行初始化,即在内存中创建一个...

这道Java选择题选什么?
答案选C。解析:A:父类的私有属性对于子类不可见,所以子类不能继承父类的私有属性。B:final修饰方法后该方法不可被重写 D:缺省属性即私有(private)属性。私有属性仅在本身类中可见,因此子类不能继承父类的缺省属性。

Java 中子类是否只继承父类的非私有变量和方法
所以,一个类的成员就是指在这个类中所声明的属性和方法,再加上从其父类继承而来的属性和方法。也就是说,子类是不能继承父类的私有成员的。虽然子类不继承父类中的私有成员,但是在父类中生命的这些私有成员仍然是子类类型对象的一部分。因为在实例化对象的时候,只初始化在当前类中所声明的属性...

相似回答