精华内容
下载资源
问答
  • Java子类继承父类详解
    千次阅读
    2021-02-12 11:46:34

    别和我说你真的懂了继承,先来看下面的代码,回答出我的问题再说

    代码很简单,如下:

    父类:

    public class T {

    public void run()

    {

    System.out.println("T can run");

    }

    public static void main(String args[])

    {

    T t = new SubT();

    t.run();

    t.fly();

    SubT subT = (SubT)t;

    subT.run();

    subT.fly();

    }

    }

    子类:

    public class SubT extends T{

    public void run()

    {

    System.out.println("SubT can run too");

    }

    public void fly()

    {

    System.out.println("SubT can fly");

    }

    }

    首先,上述代码可以正常编译乃至运行吗?

    其次,能够执行其结果是?不能编译或执行的原因在哪个地方?

    上面这个例子是很典型的子类继承父类并重写run方法,添加了新的fly方法,而调用的时候去声明一个父类引用去指向一个子类对象

    首先,上述代码是无法编译通过的,因为一个父类的引用无法去调用子类独有的方法或者被子类复写后的方法,故t.fly()这个调用时违法的

    好的,那么我们把这句注释掉,输出结果是什么呢?

    SubT can run too

    SubT can run too

    SubT can fly

    从上述结果可以看出,当一个父类引用指向了一个子类的对象时,调用的方法为子类复写后的方法,而非父类方法,正式这一特性大大地拓展了java的多态性

    附一个讲的比较详细的链接:父类引用指向子类对象

    更多相关内容
  • Java的一个子类可以继承多个父类。答:×放样时的路径允许有几个?()答:1个下列有关有限合伙企业设立条件的表述中,不符合新颁布的《合伙企业法》规定的是( )答:有限合伙企业名称中应当标明\"特殊普通合伙\"字样...

    Java的一个子类可以继承自多个父类。

    答:×

    放样时的路径允许有几个?()

    答:1个

    下列有关有限合伙企业设立条件的表述中,不符合新颁布的《合伙企业法》规定的是(  )

    答:有限合伙企业名称中应当标明\"特殊普通合伙\"字样

    在圆柱、圆锥齿轮组成的传动系统中,圆锥齿轮应布置在 齿轮

    答:高速级

    How to pay for the energy-upgrade installations?

    答:Seek financial assistance from the companies.

    运动负荷的核心要素是:

    答:负荷强度

    维也纳分类是一个(????? )层编码系統。

    答:3

    组成微丝最主要的化学成分是____

    答:肌动蛋白

    动销率指的是你现在有销量的产品在上架的所有产品里所占的比例

    答:对

    下列表示晶向指数的是: (abc)|[abc]|[uvw]|{uvw}

    答:[uvw]

    永续年金现值是年金数额与贴现率的倒数之积( )

    答:√

    吸气运动时 【 】

    答:肋间外肌收缩

    不属于商业银行的交易存款的是

    答:储蓄存款

    下列利率决定理论中,强调投资与储蓄对利率的决定作用

    答:古典利率理论

    ( )不属于光的度量单位。

    答:热量

    常见金属的导电能力顺序为(? ? )。

    答:银、铜、金、铝

    旅游活动对环境美学的影响 、

    答:旅游者的不文明行为、建筑污染与破坏性建设。

    管道布置图中管件、阀门、仪表控制点一般不标注定位尺寸。

    答:对

    ____ is the central bank in Britain.: Bank of England|Bank of Scotland|Barclays Bank|Standard Chartered

    答:Bank of England

    生态系统的物种水平格局有一类是 和

    答:散生;簇生 散生;簇生

    十二经脉的走向,如《灵枢·逆顺肥瘦》说:“手之三阴,____;手之三阳,____;足之三阳,____;足之三阴,____。

    答:从胸走手 从手走头 从头走足 从足走腹抵胸

    Java的一个子类可以继承自多个父类。

    展开全文
  • JAVA子类继承父类时的构造方法

    千次阅读 2021-12-03 16:52:22
    Java 中,无论是 explicit 还是 implicit 方式,都要求在子类的构造方法中调用其父类的构造方法。如果父类无构造方法(其实是一个默认无参的构造方法),那么子类的构造方法中...当父类有多个构造方法时,子类需要显示

    在 Java 中,无论是 explicit 还是 implicit 方式,都要求在子类的构造方法中调用其父类的构造方法。如果父类无构造方法(其实是一个默认无参的构造方法),那么子类的构造方法中会自动进行调用;如果父类有自己的构造方法(这时父类不会有默认无参的构造方法),那么在子类的构造方法中,必须要调用父类的某个构造方法,而且必须是在构造方法的第一个语句中进行调用。

    此时再创建子类实例就需要显示的调用父类的构造方法,并且进行传参,否则创建不出来父类的实例就会编译出错

    当父类有多个构造方法时,子类需要显示的决定使用哪一个构造方法

    究其原因,想必是 Java 语言设计者,要求子类有责任保证它所继承的父类尽快进入到一个稳定、完整的状态中。试想,如果没有这个约束,那么子类的某个继承自父类的方法可能会使用到父类中的一些变量,而这些变量并没有进行初始化,从而产生一些难以预料的后果。

    父类的构造方法子类不可以继承,更不存在覆盖的问题。

    所以子类构造方法默认调用父类的无参构造方法。(所以养成写无参构造的习惯)

    如果子类访问父类的有参构造方法,必须在子类构造方法第一行使用super(参数)

    当构造一个对象的时候,系统先构造父类对象,再构造子类对象。

    如果直接new子类实例,就会调用到父类刚刚这个自动生成的没有参数的构造方法

    当父类里有构造方法时,并且这个构造方法带参数的时候,编译器就不再自动生成无参数版本的构造方法了。l

    例子:父类有了明确参数的构造方法

    public class Animal {
        String name;
        int age;
        public Animal(String name){
        this.name=name;
    }
        public void eat(){
            System.out.println(name+"正在吃");
        }
        public  void getage(){
            System.out.println(name+"年龄是"+age);
        }
    }

    子类继承时也需要在构造方法中为父类的构造方法赋值。不调用父类的构造方法就会报错

    public class Dog extends    Animal{
    String name;
    int age;
        public Dog(String name) {
            super(name);
           // this.name=name;
        }
        public void eat(){
            System.out.println(name+"正在吃ff");
        }
        public void neweat(){
            System.out.println("neweat");
        }
    }
    

    展开全文
  • Q1:php,子类无法访问父类私有属性,子类实例化再赋值后,子类所添加的新成员属性不存在我把涉及到这问题的知识点,可以和大家分享一下:1.父类humanBeing , 子类student, 实例对象 $m (注意:$m是子类student 的...

    Q1:php,子类无法访问父类私有属性,子类实例化再赋值后,子类所添加的新成员属性不存在

    我把涉及到这个问题的知识点,可以和大家分享一下:

    1.父类humanBeing , 子类student, 实例对象 $m (注意:$m是子类student 的实例,和humanBeijing没有直接关系)

    2.private 的属性.仅在本类里使用;任何子类、实例对象都无法访问,更别说赋值。这个在书本上都一直是这么说滴。。哈哈。。。

    根据以上知识点,来看你这个问题:

    $student1=new student;

    /*实例一个student的对象,此时注意,这个对象并不会继承父类humanBeing的三个 private变量$name,$age,$gender*/

    $student1->href="#" name=zhangsan;

    $student1->age=20;

    $student1->gender=male;

    /*这里需要注意.很多人会误以为是给父类humanBeing的三个属性赋值了,这是错的。这里的赋值,仅仅是给子类student的三个属性赋值,这里也许会有人问,子类student那有什么属性呀?在php中,所有的变量,不要求申明,在类中属性也是一样的,不要求申明,而且类中,默认都是public。所以上面的这三行代码,仅仅是子类student的三个属性赋值,和父类humanBeing的三个属性,没有任何关系,仅仅名字一样而已*/

    function say(){

    echo "My name is {$this->name} and I am {$this->age} years old. I am {$this->gender}.

    ";

    }

    /*这个是父类humanBeing的公有方法,(默认的是public的),这个方法中 $this -> name.这里的$this 是指父类student,$this -> name是指父类student的属性,从始至终,它并没有被赋值,所以它是空的,(而且它也不能被赋值,因为是private),这里的$student1->href="#" name=zhangsan;赋值操作,仅仅是修改子类student的$name */

    我想这么回答,你应该非常清楚了吧

    再来理解后面的例子,就很容易了。

    $m->href="#" name="zhangsan";

    /*仅仅是给子类Man的属性赋值,而且因为可以省略声明,默认又是public的,所以能直接赋值,当然也可以输出了*/

    class Person{

    private $name;

    }

    /*可以直接把private $name;去掉,因为后面的赋值,跟它没有任何关系,直接修改成*/

    class Person{

    }WwW.zDyan;.CoM

    展开全文
  • Java 子类继承父类方法

    千次阅读 2019-05-22 09:13:32
    例如 一 B 类继承 A 类,或称从类A派生类 B 类 A 称为基类(父类),类 B 称为派生类(子类) 类继承关系语法形式 Class 派生类名:基本名表 { 数据成员函数声明 } 基本名表 构成 访问控制 基类...
  • Java子类继承(完整版)】

    千次阅读 多人点赞 2021-03-25 22:53:12
    Java子类继承1 子类与父类1.1 子类1.2 类的树形结构2 子类的继承性2.1 子类和父类在同一包中的继承性2.2 子类和父类不在同一包中的继承性2.3 继承关系(Generalization)的UML图2.4 protected的进一步说明3 子类与...
  • Dog继承Animal class Animal{ protected String name; protected String description; protected String say() { return "一只动物"; } } class Dog extends Animal{ private String name;...
  • 展开全部java中对于继承java只支持单继承。...多继承:一个类可以有多个父类。为什么不支持多继承呢?因为当一个类同时继承两个父类时,两个父类中有相同的功能,那么子类对象调用该功能时,运行...
  • Java继承和多态——子类继承

    千次阅读 2022-04-25 15:55:01
    Java 中通过 extends 关键字可以申明一类是从另外一继承而来的,一般形式如下: class 父类 { } class 子类 extends 父类 { } 例子: class Animal { } class Tigger extends Animal { } 表示的...
  • 成员变量的隐藏和方法的重写Goods.javapublic class Goods {public double weight;public void oldSetWeight(double w) {weight=w;System.out.println("double型的weight="+weight);}public double oldGetPrice() {...
  • 题目来源:大工慕课 链接 作者:Caleb Sung 题目要求 ...Athlete的getDescription()方法应该返回一字符串,例如An Athlete XXXName with height of XXX and weight of XXX; BasketballPl...
  • Java子类继承父类

    千次阅读 2015-08-07 15:57:30
    1.子类继承了父类,就继承了父类的方法和属性。 2.在子类中,可以使用父类中“public”和“protected”定义的方法和属性,也可以创建新的数据和方法;没有访问“private”定义的方法和属性的权限。 protected的使用...
  • Java子类继承

    千次阅读 2019-05-16 19:55:08
    一、子类继承性 1、利用继承,可以先编写一共有属性的一般类,根据一般类再编写具有特殊属性的新类,新类继承一般类的行为和状态,并根据需要增加它自己的新的状态和行为... 2、如果子类和父类在同一包中继承...
  • java 可不可以继承多个

    千次阅读 2021-03-05 15:54:31
    1,java是不可以继承多个类,java是单继承的,但是java通过接口可以实现多继承 2,也就是说,一个java类只能继承一个父类,但可以有多个接口. 3,若子类继承的父类中拥有相同的成员变量,子类在引用该变量时将无法...
  • Java子类继承与抽象

    千次阅读 2018-05-01 00:03:43
    一、子类与父类 object类是所有类的祖先类。1、子类继承 (1)关键字:extends class 子类名 extends 父类名{···} (2)继承特性:java不支持多继承,一个子类只能有一父类...
  • 子类可以继承父类的什么

    千次阅读 2021-03-05 22:47:45
    展开全部子类可以获得除private权限以外的所有父类属性,但是:1、在子类继承62616964757a686964616fe58685e5aeb931333431343130父类的时候,子类必须调用父类的构造函数。2、如果父类有默认构造函数,子类实例化时...
  • java 子类继承父类各方法的执行顺序

    千次阅读 2018-05-01 18:24:03
    结论: java中子类继承父类各方法的执行顺序:(这里只写jvm自动调用的方法的顺序,包括静态代码块、代码块、构造方法) 1、第一次创建子类对象 父类静态代码块 子类静态代码块 父类代码块 父类构造方法 子类...
  • 图解Java继承内存分配

    2021-01-20 03:37:01
     (1)Java不支持继承,也是说子类至多只能有一父类。  (2)子类继承了其父类中不是私有的成员变量和成员方法,作为自己的成员变量和方法。  (3)子类中定义的成员变量和父类中定义的成员变量相同时,...
  • 必须通过父类的成员方法(或者父类的构造方法)才能访问和调用,正是因为这样的特性,所以 Java 官方文档将其描述为不可以被子类继承,但是从内存数据来看,父类的私有且非静态的数据的确在子类的对象中。...
  • 20180312 java java面向对象-子类继承父类的哪些成员先写父类还是先写子类?答:不一定,一般地,我们在实际开发工程时,先编写多个自定义的类,写完之后,发现多个类之间存在共同的代码,此时可以抽出一个父类;...
  • 如果CPU在DMA初始化设置和启动硬盘操作等方面用了1000时钟周期,并且在DMA传送完成后的中断处理需要500时钟,则在硬盘100%处于工作状态的情况下, CPU用于硬盘I/O操作的时间百分比大约是多少?案例分析二:请求...
  • Java中,子类实例化时会调用父类构造方法,子类父类方法中会有一函数生成表,执行时实现动态链接,子类重写父类方法时执行顺序也是这样  对于执行父类构造方法的问题。可以归纳为两种情况 1,如果...
  • 被调子类无参构造器这里我定义了一父类Person,一个子类Student,创建第一Student对象:运行结果如下:这很容易理解,因为静态块是在类被加载的时候而加载的,因此父类和子类静态块优先被调...
  • 继承抽象类在实现接口 class C extends B implements A interface A{ public abstract void say(); } abstract class B{ public abstract void fun(); } class C extends B implements A{ public void say() ...
  • 子类继承了父类,可以获取父类的所有属性以及方法,但是子类无法访问父类中的private属性或方法”,真的是这样的吗?继续往下读吧!
  • Java多子类继承同一父类实例化问题

    千次阅读 2022-04-21 15:54:30
    Java(安卓开发)多子类继承同一父类实例化问题
  • java子类和父类属性重复问题

    千次阅读 2021-02-28 08:53:26
    java 子类继承 父类, 但子类中 包含和父类相同 属性 ,给子类赋值之后,父类的相同的属性值还是空的。类定义如下:public class Person {private String name;private String age;// ignore getter and setter}...
  • java实现多继承的三种方式

    千次阅读 2021-12-05 19:14:17
    ​ 如果要直接继承类,子类是不可以直接多继承的,但是可以通过多层继承来实现多继承,但多层继承一般不建议超过三次。 class A{//父类A类 private int num=10; public int getNum(){ return th
  • 1. 代码 package parent; public class Child extends Father { static { System.out.println(&...子类静态代码块无变量"); } static int c = 6; static { c = c + 10; System.out.prin...
  • java继承和多态

    千次阅读 多人点赞 2021-10-08 21:38:20
    继承和多态 文章目录继承和多态继承多态 继承 多态

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 398,709
精华内容 159,483
关键字:

JAVA子类继承多个