Java基础知识分享

每部分内容会重点写一些常见知识点,方便复习和记忆,但并不是全部内容。

以下链接是java300集所做的个人笔记哦

www.bilibili.com/video/BV1qL…

具体介绍:

1、 面向对象三大特性

1.继承:一般类只能单继承,内部类实现多继承,接口可以多继承

2.封装:访问权限控制public > protected > 包 > private 内部类也是一种封装

3.多态:编译时多态,体现在向上转型和向下转型,通过引用类型判断调用哪个方法(静态分派)。

2、基本数据类型

  1. 基本类型位数,自动装箱,常量池。

  2. 例如byte类型是1byte也就是8位,可以表示的数字是-128到127,因为还有一个0,加起来一共是256,也就是2的八次方。

  3. 基本数据类型的包装类只在数字范围-128到127中用到常量池,会自动拆箱装箱,其余数字范围的包装类则会新建实例。

3、final关键字

  1. final修饰基本数据类型保证不可变

  2. final修饰引用保证引用不能指向别的对象,否则会报错。

  3. final修饰类,类的实例分配空间后地址不可变,子类不能重写所有父类方法。因此在cglib动态代理中,不能为一个类的final修饰的函数做代理,因为cglib要将被代理的类设置为父类,然后再生成字节码。final修饰方法,子类不能重写该方法。

4、抽象类和接口

  1. 抽象类可以有方法实现。 抽象类可以有非final成员变量。 抽象方法要用abstract修饰。 抽象类可以有构造方法,但是只能由子类进行实例化。

  2. 接口可以用extends加多个接口实现多继承。 接口只能有public final类型的成员变量。 接口只能有抽象方法,不能有方法体、 接口不能实例化,但是可以作为引用类型。

5、包、内部类、外部类

  1. Java项目一般从src目录开始有com...A.java这样的目录结构。这就是包结构。所以一般编译后的结构是跟包结构一模一样的,这样的结构保证了import时能找到正确的class引用包访问权限就是指同包下的类可见。import 一般加上全路径,并且使用.*时只包含当前目录的所有类文件,不包括子目录。

  2. 外部类只有public和default两种修饰,要么全局可访问,要么包内可访问。

  3. 内部类可以有全部访问权限,因为它的概念就是一个成员变量,所以访问权限设置与一般的成员变量相同。

非静态内部类是外部类的一个成员变量,只跟外部类的实例有关。静态内部类是独立于外部类存在的一个类,与外部类实例无关,可以通过外部类.内部类直接获取Class类型。

6、Class类和Object类

  1. Java反射的基础是Class类,该类封装所有其他类的类型信息,并且在每个类加载后在堆区生成每个类的一个Class<类名>实例,用于该类的实例化。

  2. Java中可以通过多种方式获取Class类型,比如A.class,new A().getClass()方法以及Class.forName("com.?.?.A")方法。

  3. Object是所有类的父类,有着自己的一些私有方法,以及被所有类继承的9大方法。

今天就分享到这里了,需要更多资料的小伙伴们,私信我哦!!!



posted @   爱编程的小姐姐  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示