目录
一、何为类的继承性?
继承一般是指晚辈从父辈那里继承财产,也可以说是子女拥有父母给予他们的东西。在面向对象程序设计中,继承的含义与此类似,所不同的是,这里继承的实体是类而非人。也就是说,继承是子类拥有父类的成员。多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中, 那么多个类无需再定义这些属性和行为,只要继承那个类即可。此处的多个类称为子类(派生类),单独的这个类称为父类(基类或超类)。可以理解为:“子类 is a 父类”
二、为什么要有类的继承性?
减少了代码的冗余,提高了代码的复用性
便于功能的扩展
为之后多态性的使用,提供了前提
图示:
三、继承性的格式
class A extends B{ }
说明:
A:子类、派生类、subclass
B:父类、超类、基类、superclass
public class Student extends Person {//Student继承Person
}
四、子类继承父类以后有哪些不同?
一旦子类A继承父类B以后,子类A中就获取了父类B中声明的所有的属性和方法。 特别的,父类中声明为private的属性或方法,子类继承父类以后,仍然认为获取了父类中私的结构。只因为封装性的影响,使得子类不能直接调用父类的结构而已。
子类继承父类以后,还可以声明自己特有的属性或方法:实现功能的拓展。
子类和父类的关系,不同于子集和集合的关系。
public class Person {
public String name;
private int age;
public Person(){
}
}
public class Student extends Person {//Student继承Person
//增加属性,实现类的功能扩展
private int grade;
public static void main(String [] args) {
Student s = new Student();
//name的权限修饰符为public,Student类中可直接调用name
s.name=”Tom”;
//age的权限修饰符private,因此在Student类中不能调用age,只能调用setAge()方法
s.setAge(24);
//grade的权限修饰符为private,main()方法在Student类中,可直接调用
s.grade=100;
System.out.println(s.name);//Tom
System.out.println(s.getAge());//24
System.out.println(s.grade);//100
}
}
五、Java中继承性的说明
一个类可以被多个子类继承。
Java中类的单继承性:一个类只能有一个父类
子父类是相对的概念。
子类直接继承的父类,称为:直接父类。间接继承的父类称为:间接父类
子类继承父类以后,就获取了直接父类以及所间接父类中声明的属性和方法
图示:
六、java.lang.Object类的理解
如果我们没显式的声明一个类的父类的话,则此类继承于java.lang.Object类
所的java类(除java.lang.Object类之外都直接或间接的继承于java.lang.Object类
意味着,所的java类具有java.lang.Object类声明的功能。
public class Dog {
public static void main(String[] args) {
Dog d=new Dog();
//toString是Object类中的方法,因此可说明Dog类是间接继承于Object类的
d.toString();
}
}
今天的文章java中继承性的含义_java子类能继承父类的私有属性吗分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/82282.html