java基础三

java基础三文章目录1.面向对象2.类3.对象4.构造方法5.this关键字6.static关键字7.继承8.super关键字9.方法的重写10.多态1.面向对象首先在java中,肯定都会听到这样一句,万物皆是对象。那么什么是对象?1.如何描述对象:静态的特征:眼睛里能看到的东西动态的功能:能干嘛,可以干嘛那么对象是如何产生的?对象是通过类来new出来的,没有对象,new一个!!!!2.什么是类??类是多个对象之间的共性,是对象的抽象,用于描述一组对象的共性特点:类中只有变量和方法变量就是静态的属

1.面向对象

首先在java中,肯定都会听到这样一句,万物皆是对象。那么什么是对象?
1.如何描述对象:
静态的特征:眼睛里能看到的东西
动态的功能:能干嘛,可以干嘛

那么对象是如何产生的?对象是通过类来new出来的,没有对象,new一个!!!!
2.什么是类??
类是多个对象之间的共性,是对象的抽象,用于描述一组对象的共性
特点:
类中只有变量和方法
变量就是静态的属性
方法就是动态的功能
3.类和对象之间的关系
类是对象的抽象
对象是类的具体实例

2.类

类是用来描述一组对象静态和动态的特征
静态的特征称之为属性,例如:身高,体重,颜色,大小
动态的特征称之为行为/功能,例会,会吃饭,会喝水,会陪主人玩…

具体到代码中:
属性就是变量
行为就是方法

所以总结起来,类中只能有变量和方法
代码实例:
类中的变量(属性):
在这里插入图片描述
类中的方法:
在这里插入图片描述

3.对象

对象是有类new出来的
例如:
在这里插入图片描述

类和对象的关系就好比锅和模具之间的关系:锅是由模具产生出来的,现有模具才有锅。

4.构造方法

为什么要有构造方法
构造方法的功能主要是为了构造对象,在创建一个类完成的时候,系统会自动默认一个构造方法用来构造对象,但是由于有参无参,参数的不同。所有类中要求至少有俩个重载的构造方法,一个有参一个无参。所以需要创建构造方法
案例:
在这里插入图片描述

5.this关键字

this指代调用当前方法的那个对象
在这里插入图片描述

6.static关键字

静态,可以修饰方法,称之为静态方法,又可以修饰属性,称之为静态属性
静态即是类,静态方法称之为类方法,静态属性称之为类属性
不加static的,是成员属性和成员方法,是对象的成员,需要通过对象来调用
静态方法:
在这里插入图片描述
静态方法(类方法),不可以直接发起对成员属性和成员方法的调用(有了类,不一定有对象)
成员方法能发起对静态属性和静态方法的调用(有了对象,一定有类)

静态代码块:
在这里插入图片描述
静态代码块是用来把类加载到内存中使用的,在构造方法执行之前执行,
但只会执行一次,他对成员方法和成员变量都不能调用
用来做一些类启动的准备工作

总结:
1.静态的就是类的,需要类名去调用
2.有了类不一定有对象(静态方法中不能发起对成员方法和成员属性的调用)
3.有了对象一定是有类(成员方法中可以直接调用静态的方法和属性)
4.static{}(静态代码块)最先被执行,且只执行一次
5.自定义静态方法使用场景较少,静态属性使用较多,一般作为计数器使用

7.继承

继承是什么?继承的好处?继承的特点是什么?
定义:继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。
好处:继承可以减少代码冗余,提高代码的可复用性
允许开发人员创建分等级层次的类
特点:1.子类去继承父类的非私有属性和行为
2.私有属性和行为不能被继承
3.构造方法不能被继承
4.java中的继承都是单继承,可以实现多重继承
案例:
创建一个Person类,定义属性和方法
在这里插入图片描述
在创建一个student类来继承Person类
在这里插入图片描述
可以发现学生类中的属性name,age,birthday 方法 showInfo()都有,是由Person父类中继承过来的,构造方法不能继承过来所以必须自己手写!并且除了可以继承父类中的方法,你也可以在student类中自己写别的方法study();

8.super关键字

和this关键字使用类似,指代父类/超类对象
this关键字指代调用当前方法的那个对象,this关键字也可以调用自己的构造方法
super关键字指代调用当前方法的那个对象的父类对象,super关键字也可调用自己父类的构造方法
1.可以调用父类的属性和行为
2.super()可以调用父类的构造方法,当时此句如果出现在子类构造方法中,必须是第一句
3.当子类构造方法中没有super();系统会默认添加一个到第一位

9.方法的重写

在继承过程中,子类中从父类继承来的方法无法满足自己的需求时,可以在子类中对父类方法进行完善,这个完善过程叫做方法重写(override),方法的重写相当于在子类中覆盖父类中的方法。
重写的要求:

1.首先必须要有继承
2.子类用自己的方式去改写了继承父类的方法的方法体

继承的语法:
1.方法上一定要有@override这样的注解来标识改方法是重写
2.重写的方法不能拥有比父类更严格的权限修饰符
3.重写的方法和被重写的方法具有相同的返回值,方法名,参数列表
案例:
重写eat()方法
在这里插入图片描述

10.多态

定义:所谓多态是指同一种行为在不同的对象身上有不同的表现形式。例如,H20,在不同的环境下有不同的状态

在这里定义一个父类animal类,在其中有eat()方法:
在这里插入图片描述
在创建子类Dog类
在这里插入图片描述
创建子类Cat类
在这里插入图片描述
通过Dog类和Cat类对animal类的继承,当子类调用animal类中的eat()方法只需要在各自的类中重写改方法就行,而在main程序中可以通过构造各自的对象例如:animal a=new Dog();用a来进行调用Dog中的eat方法,同时也可以animal c=new Cat(),c来调用Cat中的eat方法,这就是多态,以后可以在创建一些子类来继承父类animal类,这样就不需要重复创建子类中共有打方法,直接在父类中继承过来就行,可以减少代码的冗余,并且程序的可扩展性增强了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/34401.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注