乱七八糟的JAVA基础学习截图_5

面向过程&面向对象

image-20220323145842634

image-20220323150150198

方法前加static的区别

加上static变为静态方法,属于类,和类一起加载。

image-20220323150916784

值传递和引用传递

值传递

只是传递值,不会改变值,调用change()方法后this.a的值没有改变。值传递不会改变值。

image-20220323151352552

引用传递

image-20220323151643343

类与对象的关系

image-20220323151730581

创建与初始化对象

image-20220323151919335

类是抽象的,只是定义了一个概念,要想使用类必须将其实例化出一个对象,通过具体的对象,赋予具体的属性来使用类。

image-20220323152411373

image-20220323152420317

创建了Student类,在Application类中实例化Student类并使用它

构造器

image-20220323153108386

image-20220323153127117

image-20220323153228782

new一个对象时在堆栈中的操作

image-20220323153908096

image-20220323154054775

image-20220323154103285

image-20220323154449984

封装

image-20220323154507353

get/set方法

将类中的属性定位private私有,外部类通过get()/set()来调用这些私有属性,get取值,set传值。

image-20220323155155097

image-20220323155247404

继承

image-20220323155430447

image-20220323160355294

在类中使用Ctrl+H可以显示该类的继承关系

image-20220323160423471

super()

super()调用父类的无参构造,super(参数)调用父类的有参构造调用构造时super()必须放在方法第一行。super. 调用父类中的方法或属性。

super.name 调用父类的属性

image-20220323160824424

super.print() 调用父类的方法

image-20220323160918559

父类中private私有的方法属性无法被继承,不能通过super调用

image-20220323160937391

image-20220323161653084

new一个对象时,首先会自动调用父类的构造函数,然后调用子类的构造函数

将Student类实例化,首先调用Person的构造器,其次调用Student构造器

image-20220323161834453

image-20220323161927208

若要显示的调用父类构造器,则super()必须在子类构造器第一行

image-20220323162001169

用this()调用自身构造器也必须在第一行,因此this()与super()冲突,不能放在同一个方法中

image-20220323162019645

image-20220323162641214

image-20220323162656833

image-20220323162734131

如果没有构造方法,虚拟机会默认一个无参构造方法,如果有构造方法,无论是有参的还是无参的,就不会有默认的无参构造方法

因此父类中有有参构造方法,子类中必须显示调用父类的有参构造,不能再隐示调用无参构造

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值