最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

java基础二-面向对象的三大特性

来源:博客园

面向对象的是三大特性

封装

一.概念

将类的信息隐藏在类的内部,不允许外部程序直接访问,通过类提供的方法实现对隐藏信息的操作和访问

封装的两大原则


(资料图片仅供参考)

  • 尽可能多的东西藏起来对外部提供一个便捷的接口
  • 所有属性藏起来
二.封装的步骤

1.定义私有属性

2.生成getter()/setter()方法封装 右键-generate getter/setter 获取到属性 赋值属性

3.创建一个有参构造和无参构造 右键 generate Constructor

4.生成toString方法 右键 generate toString

类的访问修饰符
static修饰符
  • 成员方法
    • 静态方法,可以直接通过类名访问
  • 代码块
    • 静态代码块,当java虚拟机加载类时,自动执行该代码块
  • 成员变量
    • 静态变量,可以通过类名访问

结果:静态代码块 10

继承 extends

继承就是子类继承父类的特征和行为,是的子类对象(实例)具有父类德实例域和方法,或者子类从父类集成方法,是的子类具有父类相同的行为.

继承父类方法并调用

类继承的特点

1. java只支持单继承

2.支持多层继承(继承体)

3.子类可以使用父类,父类不允许使用子类

继承的注意事项

1.只能继承public和protected修饰的属性和方法(不管子类父类是否在同一个包里)

2.子类不能继承父类的构造方法

3.子类可以拥有自己的属性和方法,子类可以对父类进行扩展

this super的区别和应用

this:代表当前引用

super:代表父类的引用

输出:10 30 20

继承构造运行机制

子类中所有构造方法都会默认访问父类的构造方法

子类会继承父类的数据,可能子类的饿数据,所以在初始化子类前还会初始化父类

输出:Father的无参构造方法 son的无参构造方法

多态

多态是同一个行为具有不同表现形式或形态的能力

非静态属性的重写

三个特点

1. 要有继承

2.要有重写

3.父类引用值项子类的对象 Animal a = new Dog(); 父类引用子类对象 ##成员变量没有重写的概念

输出:啃骨头

多态成员的特点

1. 静态属性 没有多态

2.非静态属性 没有多态 ====> 不涉及重写

3.静态方法 没有多态

静态方法的白哦用是用变量类型的类名去调用 (变量类型 变量 = new 对象)

向上转型

1. <父类型><引用变量名> = new <子类型>();

2.此时通过父类引用变量调用的方法是子类覆盖或继承父类的方法,不是父类的方法

3.此时通过父类引用变量无法调用子类特有的方法

向下转型

1. <父类型><引用变量名> = (<子类型>)<父类型的引用变量>;

2.在向下转型的过程中,如果没有转化为真实子类类型,会出现类型转换异常

多态的优缺点

优点:提高了代码的扩展性和可维护性

缺点:无法直接访问子类特有成员

关键词: