自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 问答 (13)
  • 收藏
  • 关注

原创 判断结构(含练习题)

单if语句:条件成立则执行,条件不成立则越过标准if-else语句:二者选其一,等效于三元运算符扩展if-else语句:n者选其一,等效于switch选择结构

2024-05-27 12:18:39 143

原创 内部类字节码文件

将字节码文件复制给其他开发人员时,不要忘记内部类的字节码文件内部类的字节码文件的名字格式是"外嵌类名$内部类名",RedCowFarm$RedCow.class某类型农场饲养一种牛,不希望其他农场饲养这种牛,这种特殊种类的牛的类作为内部类

2024-05-27 12:16:40 186

原创 三大特征-多态性

对象的上下转型:将一个对象的引用从一种类型转换为另一种类型继承性是多态性的前提,多态性允许不同的对象对同一个消息做出不同的响应向上转型一定是安全的,向下转型可能是不安全的,需要使用instanceof运算符检查

2024-05-27 12:05:33 1746

原创 三大特征-封装性

封装:将细节信息隐藏,外界不可见private是一种封装,方法是一种封装,类也是一种封装Java Bean:private修饰所有的成员变量,无参构造器,全参构造器,成员变量对应的Getter/Setter方法

2024-05-27 11:41:22 166

原创 三大特征-继承性

继承是一种由已有类创建新类的机制,子类可以让我们不必一切从头做起子类可以继承父类的属性和行为,同时又可以增添子类独有的数据和数据上的操作对于已经投入使用的类,推荐定义一个新类继承旧类,重复利用共性内容,添加改动内容

2024-05-27 11:40:17 530

原创 Java继承体系

一个类只能直接继承一个类(单继承),但可以实现多个接口(多实现)一个类继承父类并实现接口,这种混合继承的方式使得Java继承体系更加灵活和强大

2024-05-27 11:25:31 366

原创 自定义异常

自定义异常类一般以Exception结尾,说明该类是一个异常类必须继承Exception类(编译时异常),或者RuntimeException类(运行时异常)在自定义异常类中添加一个带有String参数的构造方法,该参数用于存储异常的描述信息

2024-05-27 11:17:04 267

原创 了解断言语句

Java 解释器运行应用程序时,默认关闭断言语句在调试程序时可以使用 -ea 启用断言语句,java -ea mainclass值是 false ,程序从断言语句处停止执行,并输出 messageException 表达式的值

2024-05-27 11:03:24 148

原创 异常处理方式

运行时异常,可以选择不处理,由 JVM 在运行时抛出编译时异常,必须显示处理,要么 throws,要么 try-catchtry-catch 语可中执行 System.exit(0) ,则不执行 finally 子语句,及其后的所有语句

2024-04-29 08:58:16 404

原创 异常体系结构

异常:【程序在执行过程中】,出现的非正常情况,最终导致JVM的非正常停止异常并不是语法错误**,语法错误编译不通过,不会产生字节码文件,程序根本不能运行处理异常的方式是中断处理,异常本身是一个类,产生异常就是创建一个异常对象并抛出

2024-04-29 08:56:39 293 1

原创 了解JRE扩展

编译源文件 --> 编写清单文件 --> 执行jar.exe命令 Java 运行环境提供的类库只是核心类,不可能满足用户的全部需求将类打包为 jar 包,放入扩展 \jre\lib\ext 中,程序就可以使用 import 语句使用扩展中的类

2024-04-29 08:53:52 194

原创 继承与实现

在Java中,通常更推崇对象组合和接口实现,而不是类继承继承更适合表达“是什么”的关系,例如狗是动物。实现更适合表达“做什么”的关系子类优先使用父类方法,继承确实有其独特的优势,但也需要谨慎使用,避免过度依赖

2024-04-29 08:52:53 1024 2

原创 简述接口类型

接口是一种公共规范,最重要的是抽象方法静态方法必须通过接口名调用,不能通过对象名调用重写的接口方法,一定显示使用public修饰(不能降低访问权限)

2024-04-29 08:49:11 384

原创 static关键字

变量被对象共享,就用static修饰;方法不访问对象的特有数据,就用static修饰静态代码块执行唯一的一次,一次性对静态成员变量进行赋值,在构造方法之前执行静态成员属于类,而不是类的实例。类变量存储在方法区的静态区中,是对象的共享数据

2024-04-29 08:46:29 146

原创 abstract关键字

抽象方法:只允许声明,不允许实现(没有方法体,以分号结束)抽象类:抽象方法所在的类必须是抽象类,抽象类不一定包含抽象方法抽象类的子类:覆盖重写父类中所有的抽象方法,否则该子类必须是抽象类

2024-04-29 08:42:06 315

原创 final关键字

final可以修饰类、方法、变量(成员变量、局部变量)final类不能被继承,final方法不能被隐藏,final常量“一次赋值,终生不变”

2024-04-29 08:40:26 203

原创 参数传值机制

基本类型:数值的拷贝引用类型:引用的拷贝方法内部改变参数对象的状态(修改某属性),改变将反映到原始对象上方法内部改变参数本身的引用(引用新对象),改变不会反映到原始对象上

2024-04-03 07:00:04 365

原创 方法重载、方法重写

Java中的方法重载:方法名相同,参数列表不同Java中的方法重写:方法名相同,参数列表相同方法签名:方法名 + 参数列表,用来区分不同方法的标识符

2024-04-03 06:58:08 747

原创 构造方法、main方法

构造方法是一种特殊的成员方法,用来初始化对象的状态,不会被子类继承main方法是一种特殊的成员方法,由JVM直接调用,而不是由其他方法调用

2024-04-03 06:50:45 436

原创 方法基础知识

定义方法三要素:返回值类型、方法名、参数列表。方法的返回值只能是0个或1个,方法的参数可以有0个或多个。参数就是原料,进入方法的数据;返回值就是产品,从方法中出来的数据。

2024-04-03 06:46:48 287

原创 变量重名情况

局部变量和成员变量重名,使用`this关键字`访问成员变量子类成员变量和父类成员变量重名,使用`super关键字`访问父类成员变量内部类成员和外部类成员重名,使用`外部类名.this.外部类成员名`访问外部类成员

2024-04-03 06:43:24 339

原创 成员变量、局部变量

变量分为成员变量、局部变量成员变量分为实例变量、静态变量定义位置、作用范围、生命周期、内存位置、默认初始化值五个方面的比较

2024-04-03 06:39:29 149

原创 格式化输出数据

数据默认右对齐,长度不够补空格,超出长度按实际输出System.out.printf("格式控制部分",表达式1,表达式2,···,表达式n);格式控制部分由格式符号、普通字符组成,普通字符原样输出,格式符号输出表达式的值

2024-04-03 06:36:32 166

原创 常量分类、常量优化

右侧常量值没有超过左侧的数据范围,右侧不存在变量,同时满足两个条件1、对于byte/short/char类型,Java编译器自动隐含地进行强制类型转换2、对于字符串String类型,字符串字面量在编译时确定,存储在字符串常量池中

2024-04-03 06:30:30 318

原创 基本类型封装-有理数

分数也称作有理数,两个分数四则运算的结果仍然是分数(最简形式)自定义Rational类实现对有理数的封装:分子和分母,还有重要的四则运算辗转相除:求两【正整数】最大公约数。算法思路:r=m%n,m=n,n=r;r=0,返回n

2024-03-12 16:52:30 219

原创 基本类型封装

Java 是面向对象的,实现对基本数据类型的封装, java.lang 包封装类的xxxValue方法:从 byteValue() 到 doubleValue() 6个方法,实例方法封装类的valueOf方法:valueOf(int i)、valueOf(String s)、valueOf(String s, int radix)

2024-03-12 16:52:13 353

原创 访问权限修饰符

访问权限从高到低:public、protected、友好的、private控制成员的可见性和可访问性,局部变量由于其作用域和生命周期的限制,不能使用访问修饰符

2024-03-12 16:51:35 448

原创 package、import

package 语句作为 Java 源文件的第一条语句,指明源文件定义的类所在的包使用 import 语句引入包中的类 、接口,Java 大约提供 130 多个包一个 Java 源文件中可以有多个 import 语句,必须写在 package 语句和类定义之间

2024-03-12 16:51:09 252

原创 实例成员、静态成员

静态成员先于实例成员存在对象共享静态变量,对象独占实例变量静态不能【直接】访问实例,实例可以直接访问静态

2024-03-12 16:50:41 319

原创 简述类与对象

类是Java语言中最重要的数据类型,用于创建具体实例(对象)类是对现实事物的模拟,包含属性(成员变量)和行为(成员方法)分配给对象的变量被习惯地称作对象的实体,对象可以动态地被分配实体,Java 编译器对空对象不做检查

2024-03-12 16:50:09 386

原创 this关键字

this 是 Java 的一个关键字,表示某个对象this 可以出现在构造方法、实例方法中,但不可以出现在类方法中

2024-03-07 19:53:28 301

原创 super关键字

super 可以出现在构造方法、实例方法中,但不可以出现在类方法中super 是一个引用,并不表示某个父类对象,指向当前对象的父类(或超类)的部分静态成员属于类,不会被继承,子类可以重新定义静态成员,这被称为隐藏(hiding)

2024-03-07 19:52:49 362 1

原创 UML建模-类图

类图结构:第一层名字层、第二层变量层/属性层、第三层方法层/操作层类图关系:泛化is-a、实现、关联(组合contains>聚合has)、依赖use-a

2024-02-26 21:17:59 317 1

原创 return、break、continue

[无标签]break的作用:退出控制结构,只能退出一层[无标签]continue的作用:跳过本次循环,只能跳过一层return的作用:将方法的返回值还给调用处、退出当前方法

2024-02-26 20:46:33 257

原创 循环结构(含练习题)

for循环可以修改数组元素,foreach循环不能修改数组元素当循环次数或范围确定时,多用for循环,反之多用while循环do-while循环,循环体至少执行一次,不要漏掉末尾的分号!!循环结构一般由四部分组成:初始化语句、条件判断、步进语句、循环体

2024-02-19 19:59:58 560

原创 选择结构switch

switch在有限的可能值中选择,与枚举类是绝佳的组合所有case都和表达式的值不匹配,就会执行default语句体部分从被匹配的位置开始执行,如果遇到break,那么退出选择结构

2024-02-19 19:58:40 339

原创 异或运算实现加密解密

异或运算符^,相同为0,不同为1(同0非1)由异或运算法则可知:a ^ a = 0,a ^ 0 = a如果c = a ^ b,那么a = b ^ c,即a ^ b ^ b = a,^ 的逆运算仍然是 ^

2024-02-01 21:41:47 584

原创 一文搞懂Java运算符

byte/short/char,参与算术运算和位运算时,自动提升为int类型比较 float 型数据与 double 型数据时,必须注意数据的实际精度位运算符用来对操作数的二进制位进行运算,其操作数和运算结果都是十进制整数值

2024-02-01 21:41:04 1951

原创 【图解】选择排序+折半查找

选择排序:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后从待排数据中获取最小元素放入已排数据的末尾,直到所有元素均排序完毕。折半查找:start=0, end=length-1、middle=(start+end)/2向下取整。右移,移动start指针;左移,移动end指针,每次移动start/end指针,都需要重新计算middle指针。

2024-02-01 21:39:10 301

原创 【图解】实现数组元素反转

方法一: arr[i]和arr[length-i-1]交换,交换length/2次方法二: min=arr[0]、max=arr[length-1],min< max时交换

2024-02-01 21:38:11 127

JDK-API-1-6-zh-CN

JDK API 1.6 官方中文

2023-09-19

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除