Java 基础知识点

Java 语言特性

Java 是一个面向对象的的语言,拥有封装,继承,多态的特性。

Java 是一个跨平台的语言,不同的平台对应不同的虚拟机,依赖于虚拟机实现。

Java 有许多一个可使用的方法,比如 Object 作为 Java 的父类,集合,反射等现成的方法来处理程序。

JDK、JRE、JVM

JDK:包含 JRE+Java 开发工具,包含 Javac 等工具。

JRE:包含 JVM + Java 的 jar 包,Java 程序运行在 JRE 中。

JVM:Java 虚拟机,Java 的跨平台性依赖其来完成,并且还有垃圾回收等功能。

八大基础数据类型

整数型:byte / 1 字节,char / 2 字节,short / 2 字节,int / 4 字节

布尔型:boolean / 1比特

浮点型:float / 8 字节,double / 8 字节

一个字节等于 4 个比特

String

String 是不可变的字符串,StringBuilder 、StringBuffer 是可变的字符串。

不可变的是为了在网络传输的时候,使用 String 作为参数,String 不可变的话,可以提高安全性。

String 是线程安全的。

我们要经常修改字符串的话,一般使用 StringBuilderStringBuffer

StingBuilder 是线程不安全的。

StringBuffer 是一个使用了 Syschronized 的线程安全的可变字符串。

面向对象

封装

就是将方法和变量,封装在类中,对外展现需要暴露的方法,隐藏内部实现的细节。使用时通过创建一个对象来调用类中的方法,创建一个一个类似于模块化的结构,每个类各司其职,便于管理与维护,也起到代码复用的效果。

继承

通过继承,子类可以获取父类私有以外的方法和变量。符合里氏替换原则,实现了代码的复用。

多态

第一种是编译时多态,主要通过方法的重载实现。

第二种是运行时多态,对象引用的具体类型在运行时才确定,通过子类继承父类并重写父类的方法,然后使用父类的引用指向子类的对象实现。

访问权限控制符

private,私有,被该控制符修饰的变量或者方法只能在当前类中被访问。

protected,保护,被该控制符修饰的变量或者方法可以在当前类和其子类中被访问。

public,公共,被该控制符修饰的变量可以在任何地方被访问。

重载与重写

重载:是在同一个类中,方法名相同,必要条件:方法参数类型,个数不同。非必要条件:返回类型不同。

重写:子类重写父类的方法,方法名,参数等等都一致。主要用于面向对象多态的实现条件之一。就是父类的引用指向子类的对象。

抽象类与接口

抽象类:用 abstract 修饰的类为抽象类,里面可以定义抽象方法,普通方法,局部变量,如果子类不是抽象类继承抽象父类需要重写抽象父类的方法。

接口:Interface 关键字,里面只能定义公共抽象(public abstack)的方法,局部变量也一定为公共静态常量(public static final),实现该接口的实现类必须重写该接口的全部方法。

一个类可以实现多个接口,但是只能继承一个类。

#Object 类方法

clone()

克隆,用于克隆对象,一般不使用

##equals()

一般用于类中的方法实现,用于比较对象之间的差异。

==,用于基础类型的比较。

equals(),用于引用对象的比较。

hashCode()

哈希值,哈希值相同的对象 equals() 不一定相同,equals() 相同哈希值必须相同。

toString()

toSring,一般用于输出的时候转化的进行输出。

关键字

final

final,常量

被 final 修饰的变量,初始化后不能修改。

被 final 修饰的方法,子类不可以重写。

被 final 修饰的类,不可以被继承。

static

static,静态

被 static 修饰的变量,称为静态变量或者类变量,与类一起初始化完成。

被 static 修饰的方法,称为静态方法,与类一起初始化完成。

被 static 修饰的代码快,称为静态代码快,在类初始化的时候执行。

被 static 修饰的内部类,称为静态内部嘞,与类一起初始化完成,并且只能访问外类的静态变量或者静态方法。

类的初始化顺序

父类(静态变量,静态语句块)

子类(静态变量,静态语句块)

父类(实例变量,普通语句块)

父类(构造函数)

子类(实例变量,普通语句块)

子类(构造函数)

大家好,我是小辉,身份:24 届毕业生 时间:第一版写在 2024.06.08,地点:家中 状态:正在找工作中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java编程小辉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值