Java中类的继承与权限控制

一、继承

  a、Java中使用extends关键字实现类的继承机制

  b、通过继承,子类自动拥有了基类(superclass)的所有成员(成员变量和方法)

  c、Java只支持单继承,不允许多继承;

    一个子类只能有一个基类,一个基类可以派生出多个子类。

  子类继承基类后,拥有私有变量的所有权,没有私有变量的使用权。

  default权限为包权限,只有在同一个包中才可以访问default修饰的东西

  

二、方法的重写

  a、在子类中可以根据需要对从基类中继承来的方法进行重写

  b、重写方法必须和被重写方法具有相同方法名称、参数列表和返回类型

  c、重写方法不能使用比被重写方法更严格的访问权限

三、继承中的构造方法

  a、子类的构造的过程中必须调用其基类的构造方法

  b、子类可以在自己的构造方法中使用super(argument_list)调用基类的构造方法

    使用this(argument_list)调用本类的另外的构造方法

    如果调用super,必须写在子类构造方法的第一行

  c、如果子类的构造方法中没有显示地调用基类构造方法,则系统默认调用基类

  无参数的构造方法

  d、如果子类构造方法中既没有显式调用基类构造方法,而基类中又没有无参的

  构造方法,则编译出错。

原文地址:https://www.cnblogs.com/langdao/p/11437555.html

时间: 2024-10-09 09:38:10

Java中类的继承与权限控制的相关文章

Java类的继承与权限控制

1.继承:***是一种****,说明是继承关系 Java中使用extends关键字实现类的继承机制,语法规则: 通过继承,子类拥有基类(superclass/父类)的所有成员(成员变量和成员方法) Java只支持单继承,不允许多继承 一个子类只能有一个基类,一个基类可以派生出多个子类  2.访问控制

浅谈Java中类的继承

继承作为面向对象的三大基本特征之一,也是Java中必不可少的组成部分.因此,Java中类的继承和其他面向对象语言的继承都是大同小异的. 继承的优点: 通过继承可以简化类的定义. Java只支持单继承,不允许多重继承. 可以有多承继承,即一个类可以继承某个类的子类,如类B继承了类A,类C又继承了类B,那么C也间接的继承了A. 子类继承所有父类的成员变量和成员方法,但不继承父类的构造方法.在子类的构造方法中,可使用语句super(参数列表)调用父类的构造方法. 如果子类的构造方法中没有显性的调用父类

再谈Java中类的继承

上篇博客谈到了Java中类的继承,但是那些远远不能满足我们在实际操作中的需要,那么怎么才能让子类的功能更强大,并且具有父类的属性呢? 一: 父类 1 public class A { 2 3 final String name="A"; 4 5 void A1(){}; 6 } 子类 1 public class AA extends A{ 2 3 String name="AA"; 4 5 void AA1(){}; 6 7 public static void

Java中类的继承,属性和方法的四种修饰符的作用范围,final关键字,java的三大特点中的2个:封装和多态,以及多态的一个设计模式,模板方法模式(template method)

(一)Java中的继承: 关于继承,在Java中类的继承只能是单继承,不像C+++那样灵活,可以多继承,多继承的后果就是各种关系乱套,就相当于一个孩子有2个母亲一样,社会关系的复杂,不利于程序后期的开发和维护,所有Java中的类是只能单继承,通过接口来实现多继承:对于接口的话,是可以多继承的,例如:A接口可以同时继承接口B和接口C,但是有一点要注意,就是实现接口A的类必须要实现接口A.B.C中所有的抽象方法:接口之所以可以多继承,就是因为接口结构比较简单. 继承是通过extends关键字来实现,

重读java编程思想之访问权限控制二

private:私有权限 即除了包含该成员的类之外,其他任何类都无法访问这个成员: class Sun{ private Sun(){} static Sun doSun(){ return new Sun(); } } public class IceCream{ public static void main(String[] args){ // Sun s = new Sun(); 这是错误的 Sun s = Sun.doSun(); } } //上面的例子简单的描述了private的一个

Java之继承和权限控制(三)

关键字:extends; 继承后,子类拥有了父类所有的成员(成员变量和方法): java只支持单继承,不允许多继承,即一个类只能有一个父类,但是一个类可以有多个子类. 权限修饰符: 成员变量的修饰符包括public.private.default.protected. class的修饰符包括:public.default public:可以在任何地方被访问: default:只可以被同一个包内部的类访问. 方法重写: 在子类中可以根据需要重写从父类中继承来的方法: 重写方法和被重写方法必须具有相

Java学习---3.面向对象--继承和权限控制,重写,继承中的构造方法

1.Java只能支持单继承,不允许多继承.子类自动拥有基类的所有成员. class Students extends school(){} ,父类中私有的方法也会被继承下来,但是子类没有使用权. 内存分析: 2.default类只能被同一个包内部的类访问 super关键字:Java中使用super来引用基类的成分. 重写::equals().其默认定义为两者为同一对象.

java中类的继承

我们都知道java的四大特性:抽象.继承.封装.多态: 那么关于继承有哪些特性呢?下面看具体实例: (1) public class Person { public  int a=2; public  void see(int a){ System.out.println(a); } } public class Hello extends Person { public int a = 3; public void see(int s){ System.out.println("11"

Java - Thinking in Java 第6章 访问权限控制

面向对象的基本问题: 如何把变动的事物与保持不变的事物区分开来. 重构即重写代码, 以使得它更可读, 更易理解, 并因此更具可维护性. 访问权限: public, protected, 包访问权限, private. 本地使用, 未命名包, 即默认包. 每个文件即编译单元, 后缀名.java, 编译之后, 后缀名.class. 类库package, public全部权限, 未命名包内权限. Java包的命名规则全部使用小写字母, 包含中间的字也是如此. package和import的目的是命名空