7、Java——对象:包,private,super,extends,重写,final,modifier,object
2021/7/26 22:08:11
本文主要是介绍7、Java——对象:包,private,super,extends,重写,final,modifier,object,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、包package与导sql教程入import
(1)包机java基础教程制: 文件夹。
①便于管python基础教程理众多的资源。
②提供了多c#教程重的vb.net教程命名空间。
(2)命名规范:
公司域名倒着写 com.xxxx.xxxx
包信息存在与java文件的首行。
(3)导包 : 指明要使用的类的位置。
import 包名.类名;
位置: 类对的上面,包信息的下面。
①使用的时候指明类的权限定名,完整路径,只能在当前只一次使用有效
②import 包名.类名;
③模糊匹配 *,模糊匹配当前包下的所有类 import java.util.*;,影响编译效率不会影响运行效率。
④静态导入,只能导入某个类中的静态内容。
2、Private关键字
类似年龄,可能存储负数,或者不符合业务逻辑要求的一些数据,程序可能存在安全隐患,,为了解决安全隐患:使用关键字private 私有的。
(1)private 私有的 :成员修饰符,不能修饰局部,成员只能在本类中使用。
(2)提供公共的访问方式:公共的成员方法(非静态),设置器 setter,访问器 getter,私有的属性,配合公公公的访问方式提供成员的安全性。
3、面向对象的三大特性: 封装,继承,多态
①属性私有化配合公共的访问方式就是封装的具体体现。
②方法,类..都是封装的体现。
③私有是封装,封装不一定是私有。
(1)封装:隐藏内部的实现细节,对外提供公共的访问方式。
①封装的优点:a.提高安全性b.提高了复用性。
②注意: 未来所定义的javabean类,所有的属性都应私有化,并提供公共的访问方式。
(2)继承 :子承父业。
①作用: 子类一旦继承父类,就有权使用父类中的内容,子类中可以扩展自己独有的内容 延续+扩展。
②定义: 子类 extends 父类。
③定义继承的原因: 为了提高代码的复用性。
(3)父类/基类/超类 : 被继承的类;
子类/派生类 : 继承父类的类。
父类是子类的共性,一个子类只能存在一个直接父类,一个父类可以存在多个子类。
- 特点:java中的继承是单继承机制。
- 优点: 简单,缺点: 不变与后期维护,不够灵活。
(4)面向对象的设计原则之一:
①开闭原则 : 对修改关闭,对扩展开放。
②javabean : 抽取一系列对象的共性。
4、super 与 this 之间的区别:
this 指代当前对象,super 指代父类对象。
(1)先静态后成员:在子父类关系下,创建子类对象 : 先父类后子类 (在子类内存空间中存储父类对象,可以通过super在子类中使用父类对象)。
(2)super需要在子类中使用。
在子类的构造器首行通过super调用父类的执行构造器。
(3)super(参数列表)。
默认在子类构造器的首行会调用父类的空构造 super(),在子类构造器的首行不能同时显示存在this()与super(),因为都需要定义在首行第一个条语句。
5、重写 Override
(1)重写与重载之间的区别,都是方法的一种特性。
①重载:a.同一个类中的多个方法;b.方法名相同;c.参数列表不同|方法签名不同。
- 重写:a.不同的两个类;b.继承或实现关系;c.方法签名相同。
(2)使用前重写的前提需求 : 子类对父类某个 功能满意,功能实现不满意,可以在子类中对这个功能进行重新实现-->重写。
(3)使用特点: 子类引用会调用子类中重写的方法,子类没有找父类,子类有找子类,会对父类中的方法进行屏蔽。
(4)检查一个方法是否是重写方法:
①在行号的后面显示,点击会跳转到对应被重写的方法位置。
②@Override 强制检查一个方法是否为重写方法。
(5)详细要求:
①== 方法签名。
②<= 返回值类型 :
a.基本数据类型 : 完全相等。
b.引用数据类型 : 子类中重写方法的返回值类型 <= 父类中被重写方法的返回值类型。
c.没有返回值类型 : 完全相等。
③>= 权限修饰符 :
子类中重写方法的权限修饰符 >= 父类中被重写方法的权限修饰符
(6)不能被重写的方法:
①被private修饰的方法不能被重写。
②被final修饰的方法不能被重写。
- 被static修饰的方法不能被重写。
子类中如果存在与父类静态方法同名的方法,要求子类中的同名方法也需要被static修饰。
6、访问权限修饰符
本类 同包类 不同包下的子类 不同包下的其他类 公共的(public) √ √ √ √ 受保护的(protected) √ √ √ 默认的(default) √ √ 私有的(private) √ |
成员的被访问权限,成员修饰符,不能修饰局部。
(1)能够修饰的类的 : public , default(省略),私有的内容能被继承,但是无权使用。
(2)受保护的成员 :①同包类②在不同包的子类中,通过继承关系访问
(3)常用的权限修饰符:public,private。
7、final关键字
最终的
final可以修饰成员可以修饰局部
1.被fianl修饰的变量为常量
2.被final修饰的方法不能被重写
3.被final修饰的类不能被继承-->太监类
7、Object 类
(1)老祖宗类是,java中所有类的父类,java中的类都会直接或者间接的继承自Object类,如果一个类没有显示的继承自其他类,默认继承自Object类
(2)toString() 把对象数据转为字符串的表现形式
如果直接打印一个引用,默认打印的是这个调用toString方法的返回值
(3)需求: 以一个字符串展示一个对象,想要了解到对象的一些基本的信息(成员变量的值)
(4)Object类中的toString方法的实现: 默认以对象的地址展示,子类中重写toString方法,实现返回对象的成员变量的值非地址值
(5)equals 比较两个对象是否相等,Object 类中equals默认比较 : 对象的地址,如果不想比较对象的地址,想要比较所有成员变量的值,可以在子类中重写equals方法
(6)equals与==之间的区别:
①== : 基本数据类型比较数据值
引用数据类型比较对象的地址值'
②equals : 只能比较引用数据类型
默认比较对象的地址
可以通过重写实现比较对象内容(成员变量的值)
③注意: 以后要在javabean类中重写toString()与equals()方法
这篇关于7、Java——对象:包,private,super,extends,重写,final,modifier,object的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-19JAVA分布式id教程:轻松入门与实践
- 2024-11-19Java高并发教程:入门与实践指南
- 2024-11-19JAVA高并发直播教程:新手入门指南
- 2024-11-19Java高并发直播教程:入门与实践指南
- 2024-11-19Java微服务教程:初学者快速入门指南
- 2024-11-19JAVA微服务教程:新手入门的详细指南
- 2024-11-19Java微服务教程:从零开始搭建你的第一个微服务应用
- 2024-11-19Java项目开发教程:初学者必备指南
- 2024-11-19Java项目开发教程:新手快速入门指南
- 2024-11-19Java项目开发教程:零基础入门到实战