java学习之路---继承

本文深入探讨了Java中的继承概念,包括单继承、静态块、构造块、构造方法的加载顺序,以及子类如何覆写父类方法并保持权限一致性的详细解释。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

继承:继承就是继承父类的属性和方法,自己也可以扩展自己的属性和方法,因此子类也叫派生类
1.java不允许多继承,只允许单继承,但是可以多层继承,就是A extends B,B extends C


2.子类不能直接的访问父类的私有属性,但是可以通过一些渠道来访问,比如getter


3.子类的实例化过程




class A{
        {
                System.out.println("父类的构造块");
        }
        
        static{
                System.out.println("父类的静态块");
        }
        
        public A(){
                System.out.println("父类的构造方法");
        }
}




public class ExtendsTest extends A{
      


        public  ExtendsTest(){
                System.out.println("子类的构造方法");
                
        }
        
        public static void main(String[] args) {
                new ExtendsTest();
                new ExtendsTest();
        }
       
}


结果:


父类的静态块
父类的构造块
父类的构造方法
子类的构造方法
父类的构造块
父类的构造方法
子类的构造方法


意思再实例化子类的时候首先要去父类,加载父类的静态块,构造块,构造方法,在到子类来加载,顺序一样。静态块只加载一次


4.方法的覆写
方法的覆写就是子类拥有和父类同名的方法,但是在覆写方法时一定要注意覆写的方法的权限不能高于父类的权限


5.方法覆写和方法重载的区别




6.super的作用


super的作用是用来子类来调用父类的属性,方法


代码:
package test;




class B{
        public  B(){
                System.out.println("父类的构造");
        }
        
        public void info(){
                System.out.println("父类的方法");
        }




}


public class SuperTest extends B{
        
        public SuperTest(){
                super();//这里调用父类的构造方法,及时不写也是默认的,在这里调用
                
        }
        


        @Override
        public void info() {
                
                super.info();
                System.out.println("重写父类的方法");
        }






        public static void main(String[] args) {
                SuperTest superTest=new SuperTest();
                
                superTest.info();
        }


}




结果:
父类的够着
父类的方法
重写父类的方法


7.super和this的区别



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值