Java的三个特征

本文详细介绍了Java面向对象的三大特性:封装、继承和多态。封装通过属性私有化和get/set方法确保数据安全;继承允许子类继承父类的属性和方法,扩展功能;多态则增强了程序的灵活性,实现动态编译。文中还探讨了方法重写、super关键字的使用以及多态的条件和应用。
摘要由CSDN通过智能技术生成

封装

继承

多态

 一、封装

1、程序设计的要求:高内聚、低耦合。

2、属性私有(private):get/set。

get 获得这个名字,set 给这个数据设置值。set中可以封装实现的条件。 

3、快捷键:alt+inset;

4、作用:

  • 提高程序的安全性,保护数据。
  • 隐藏代码的实现细节。
  • 统一接口。
  • 增加系统的可维护性。

二、继承

1、extends ------继承

2.写法:public class A(students) extends B(person){}

A指的是子类或者叫做派生类;B指的是父类;

3、注意:

  • 继承是类与类之间的关系,除了继承之外还有包含,依赖等;
  • Java中类只有单继承,没有多继承。(一个儿子可以有一个爸爸,一个爸爸可以有多个儿子)

4、子类可以继承父类的所有东西。私有的东西不能继承。

5、修饰符:public(公共的)、protected(受保护的)、default(默认的)、private(私有的)。

6、属性一般是私有的,留有一些可以操作的方法。

7.私有的东西无法被继承;

8、快捷键:ctrl+h

继承中三个重点:object类、super、方法重写

9、在Java中,所有的类默认继承了object类。


10、super注意点:

  • super调用父类的构造方法,必须在子类构造方法的第一行
  • super只能出现在子类的方法或者构造方法中;
  • super和this不能同时调用构造方法!(因为this在调用自己类的构造方法时也需要放在第一行)

11、super与this的比较:

  • 代表的对象不同:

                 this:代表本身调用者这个对象

                super:代表父类对象的引用

  • 前提:

                  this:没有继承也可以用

                   super:只能在继承条件下才可以使用

  • 构造方法:

                this():本类的构造。

                super():父类的构造。


12、方法重写---针对非私有和非静态方法

  • 重写指的是方法的重写,与属性无关。
  • 父类的引用可以指向子类。
  • 实例化对象:A a=new A();
  • @override 注解。有功能的注释。

总结:

重写:需要有继承关系。子类重写父类的方法

(1)方法名相同,方法体不同

(2)参数列表必须相同

(3)修饰符:范围可以扩大,不能缩小。public>protected>default>private

(4)抛出的异常:范围只能缩小,不能扩大。例如:classNotFoundException--->exception

为什么需要方法的重写:

(1) 父类的功能不能马上满足子类。

方法重写与方法重载的区别:

方法重写:方法名相同,参数相同,方法体不同

方法重载:方法名相同,参数不同


三、多态

1、作用:实现动态编译,增加可扩展性。
2、一个对象的实际类型是确定的,但是可以指向的引用类型是不确定的。

      lei a=new lei();   //能调用自己的和父类的方法

      fuiLei a=new lei();//父类的引用指向子类。不能调用子类独有的方法。

      object a=new lei();//两者之间必须要有继承关系。

3、对象能执行那些方法主要看左边的类型。

4、多态的注意条件:

        多态是方法的多态,不是属性的多态。

        父类与子类存在联系,(类型转换异常;classCastException)

        存在的条件:有继承关系;方法需要重写,父类的引用指向子类的对象。father s1=new         son();

不存在多态的情况:static//方法,属于类,不属于实例

                                final //常量

                                private 

        

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值