Java-面向对象进阶(qqbb知识点)

1.包

1)包的作用

包就是文件夹。用来管理各种不同功能的Java类,方便后期代码维护。

2)包名的书写规则

包名规则:公司域名反写+包的作用,需要全部英文小写,见名知意。

3)什么是全类名

包名+类名->用来区分当前的类到底是哪个包里面的。

4)什么时候需要导包

·使用同一个包中的类时,不需要导包。

·使用java.lang包中的类时,不需要导包。

·其他情况都要导包

·如果同时使用两个包中的同类名,需要使用全类名。

2.final

1)被final修饰后,就不能再进行改变。

2)final可以修饰方法,类,变量。

-被final修饰后的方法,表明该方法是最终方法,不能被重写。

-被final修饰后的类,表明该类时最终类,不能被继承。

-被final修饰后的变量,叫做常量,只能被赋值一次。

3)常量:实际开发中,常量一般作为系统的配置信息,方便维护,提高可读性。

常量的命名规范:

·单个单词:全部大写

·多个单词:全部大写,单词之间用下划线隔开

-final修饰的变量是基本数据类型 :那么变量存储的数据值不能发生改变。

final修饰的变量是引用数据类型 :那么变量存储的地址值不能发生改变,对象内部的可以改变。

3.权限修饰符

用来控制一个成员能够被访问的范围。可以修饰成员变量,方法,构造方法,内部类。

权限修饰符的分类,有四种作用,范围由小到大(private<空着不写缺省/默认<protected<public)

private只能自己用,默认的只能本包用,protected除了本包外面其他包里面的子类还能用,public都能用。

权限修饰符的使用规则:

-实际开发时,一般只会使用private和public,成员变量私有,方法公开。

特例:如果方法中的代码时抽取其他方法中共性代码,这个方法一般也私有。

4.代码块

1)局部代码块

{}作用:提前结束变量的生命周期

2)构造代码块

-写在成员位置的代码块

-作用:可以把多个构造方法中重复的代码抽取出来

-执行时机:在创建本类对象的时候会先执行构造代码块再执行构造方法

3)静态代码块

格式:static{}

特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次

一般在数据初始化使用。

5.抽象类和抽象方法
5.1抽象方法与抽象类的介绍

抽象方法:将共性的行为(方法)抽取到父类之后,由于每一个子类执行的内容是不一样的,所以在父类中不能确定具体的方法体,该方法就可以定义为抽象方法。

抽象类:如果一个类中存在抽象方法,那么该类就必须声明为抽象类

5.2抽象方法与抽象类的定义格式

抽象方法的定义格式:public abstract 返回值类型 方法名(参数列表);

抽象类的定义格式:public abstract class 类名{}

5.3注意事项

-抽象类不能实例化

-抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类

-可以有构造方法

-抽象类的子类-要么重写抽象类中的所有抽象方法,要么是抽象类

相关推荐
名字还没想好☜14 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
·薯条大王14 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
一壶浊酒..17 小时前
Scrape Webpack练习
开发语言·javascript·webpack
ZJH__GO17 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
程序员黑豆17 小时前
Windows 系统 Java 环境变量配置全攻略:解决“不是内部或外部命令”
java·前端·ai编程
命运之光18 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言
凤山老林18 小时前
Spring Boot @Async 线上实战:从默认配置到生产级线程池治理
java·spring boot·后端
命运之光18 小时前
【C语言完整代码】图书管理系统:图书馆场景下的增删改查实战
c语言·开发语言
猿长大人18 小时前
C# | Serilog 新手入门
开发语言·c#·.net·log
marvelyu19 小时前
每天10分钟学会OceanBase系列(Day 20):跨机房容灾实战——构建多数据中心高可用架构
java·大数据·数据库