自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 java基础——使用数组存储数据并计算交集,并集(个人笔记)

最近复习java基础知识,老师要求用创建两个数组存储数据,并计算他们之间的交集和并集(偷偷说一句,其实还要求计算差集,只不过这篇写的时候差集还有点问题)。弱弱说一句:本人萌新一枚,有错误的地方欢迎指出。将用于计算的数组升序排序并生成新的数组:计算交集:这个计算方法太长,奈何本人实力不济,无法在只使用基础语句的情况下再精简了剩下的差集有机会在记录上去,如果有什么问题欢迎指出。.........

2022-07-02 16:49:04 467 1

原创 类加载(个人笔记)

类加载:通过反射机制实现类的动态加载时java实现动态语音的关键。1,静态加载:编译时加载相关的类,如果没有则报错,依赖性太强,如 new 一个对象;2,动态加载:运行时加载需要的类,如果运行时不用该类,即使该类不存在,则不报错,减低了依赖性,如 反射。类加载时机:1,当创建对象是(new) //静态加载2,当子类被加载时,父类也会被加载 / / 静态加载3,调用类中的静态成员时 // 静态加载4,通过反射//动态加载加载阶段:JVM 在该阶段的主要目的是将.

2022-05-10 20:52:15 357

原创 Class类(个人笔记)

Class类:1,Class也是类,因此也继承Object类;2,Class类对象不是 new 出来的。而是系统创建的;3,对于某个类的Class对象,在内存中只有一份,因为类只加载一次;4,每个类的实例都会记得自己是哪个Class实例所生成;5,通过 Class对象可以完整的得到一个类的完整结构,通过一系列的API;6,Class 对象是存放在堆中的;7,类的字节码二进制数据,是放在方法区的,有的地方称为类的元数据(包括:方法代码,变量名,方法名,访问权限等)...

2022-04-24 15:01:13 190

原创 反射机制(个人笔记)

java Reflection: 1,反射机制允许程序在执行期间借助Reflection API取得任何类的内部信息(比如成员变量,构造器,成员方法等)。并且能操作对象的属性及方法。反射在设计模式和框架底层都会用到; 2,加载完类之后,在堆中就产生了一个Clss类型的对象(一个类中有一个Class对象),这个对象包含了类的完整结构信息。通过这个对象得到类的结构。这个Class对象就像一面镜子,透过这个镜子看到类的结构,所以,形象的称之为“反射”。反射机制原理图:1,代码 / 编译...

2022-04-23 21:08:24 614

原创 枚举类(个人笔记)

枚举(enumeration,简写成enum):是一组常量的集合,属于一种特殊的类,里面只包含一组有限的特定的对象。实现方式有两种:一,自定义枚举。特点:1,构造器私有化;2,本类内部创建一组对象;3,对外暴露对象(即为对象添加public final static修饰符);4,可以有get方法,不能有set方法;注意:①,不需要set方法,因为枚举对象值通常只读;②,枚举对象/属性使用final 和 static 一起修饰,实现底层优化;③,枚举对象名通常全部大

2022-03-19 22:39:27 330

原创 内部类——成员内部类和静态内部类(个人学习笔记)

成员内部类:成员内部类是定义在外部类的成员位置的,并且没有static修饰。1,可以直接访问外部类的所有成员,包括私有的;2,可以添加任意访问修饰符(public,protected,默认,private),因为它的地位是类中的一个成员。3,作用域 :和外部类的其他成员一样,为整个类。4,成员内部类访问外部类成员的访问方式是直接访问。5,外部类访问成员内部类的访问方式是通过创建内部类的对象来访问,6,外部其他类访问成员内部类:(具体实现看下方代码)①,创建外部类对象,用该对象

2022-03-18 16:50:37 366

原创 内部类——局部内部类和匿名内部类(个人笔记)

内部类:一个类的内部又完整的嵌套了另一个类结构。别嵌套的类称为内部类(inner class),嵌套其他类的的类称为外部类(outer class)。是我们类的第五大成员(属性,方法,构造器,代码块,内部类),内部类最大的特点就是可以直接访问私有属性,并且可以体现类与类之间的包含关系。底层源码中有大量内部类。public class InnerClass01 { //外部其他类 public static void main(String[] args) { }}class Ou

2022-03-18 14:46:55 1823 1

原创 接口(个人笔记)

基本介绍:接口就是给出一些没有实现的方法,封装到一起,当某个类要使用的时候,在根据具体情况把这些方法重写出来。语法:interface 接口名 {属性方法(①,抽象方法;②默认实现方法(要用default修饰);③静态方法} //在jdk 7.0以前,接口里的所有方法都没有方法体,即都是抽象方法;//在jdk8.0以后可以有静态方法,默认方法,也就是说接口中可以有方法的具体实现class 类名 implements 接口 {该类自己的属性;该类自己的方法必须实..

2022-03-17 21:31:34 83

原创 抽象类(个人笔记)

当父类的某些方法,需要声明,但是又不确定如何实现时,可以将其声明为抽象方法,用abstract关键字类修饰该方法,用abstract来修饰该类,这个类也就是抽象类 。介绍:1,用abstract关键字来修饰一个类时,这个类就是抽象类;访问修饰符 abstract 类名 { }2,用abstract 关键字修饰一个方法时,这个方法就是抽象方法;访问修饰符 abstract 返回类型 方法名 (参数列表);无方法体。3,抽象类的价值更多作用是在于设计,是设计者设计好后,让子类继承并实现抽

2022-03-16 20:52:23 88

原创 final关键字(个人笔记)

final(最终的):可以修饰类,属性,方法和局部变量;用final修饰的属性,变量的命名一般用大写字母加下划线(XX—XX)的形式使用情况:1,当不希望类被继承时;2,当不希望父类的某个方法被子类覆盖(重写)时,访问修饰符 final 返回类型 方法名;3,当不希望类的某个属性的值被修改时,访问修饰符 final 数据类型 属性名;4,当不希望某个局部变量被修改时,final 数据类型 变量名;注意事项:1,final修饰的属性又叫常量,一般用 大写字母XX—XX来命名;2

2022-03-16 19:56:53 75

原创 单例设计模式(个人笔记)

单例设计模式就是采取一定的方法保证在整个软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。单例模式分为:饿汉式和懒汉式。饿汉式:步骤:1,构造器私有化,防止直接 new;2,类的内部创建对象(该对象是static);3,向外暴露一个静态的公共方法。4,代码实现class A { private String name; private static A a = new A("张三"); private A (String

2022-03-16 19:05:55 292

原创 代码块(初始化块)(个人笔记)

代码块:又称初始化块,属于类中的成员,即是类的一部分,类似于方法,将逻辑语句封装在方法体中,使用 { }包围起来。和方法不同的是,代码块没有方法名,没有返回,没有参数,只有方法体。而且不用通过对象或类显示调用,或创建对象时隐式调用。基本语法:[ 修饰符] { 代码 };一,修饰符可选写不写,要写的话只能写static。二,用static 修饰的叫静态代码块,没有的叫普通(非静态)代码块。三,逻辑语句可以为任何逻辑语句(输入输出,方法调用,循环,判断等)。四,;号可写可不写。代码块相当

2022-03-16 15:21:20 335

原创 static关键字(类变量,类方法)(个人笔记)

static(静态):用static修饰的变量和方法称为类变量(静态变量)和类方法(静态方法)。静态变量(类变量):是该类的所有对象共享的变量,该类中的任何对象去访问时,取得的值都是相同的,该类的对象去修改时,修改的也是同一个变量。静态变量最大的特点就是会被所在类的所有对象实例共享,同时类变量是在类加载的时候就生成了;静态变量在内存的位置根据jdk版本不同,会有不同的解释,①,jdk8版本以后版本在堆内存中的类变量所在的Clss实例的尾部,②,jdk8版本以前类变量在方法区的静态域中;不管stati

2022-03-16 14:08:23 925

原创 java中 == 和 equals的区别(个人笔记)

== :1,== 即可以判断基本类型,也可以判断引用类型;2,== 如果判断基本类型,判断的是值是否相等。3,== 如果判断引用类型,判断的是地址是否相等,也就是判断是不是同一个对象。 int i = 10; double j = 10.0; System.out.println(i == j);//true String a = new String("asd"); String b = new String(

2022-03-07 10:25:29 48

原创 面向对象——多态(个人笔记)

多(多种)态(状态):方法或对象具有多种形态是面向对象的第三大特征,多态是建立在封和继承的继承之上的。具体体现:1,方法的多态:重写和重载就体现多态;2,对象多态:一,一个对象的编译类型和运行类型可以不一样;二,编译类型在定义对象的时候就确定了,不能改变;三,运行类型是可以变化的;四,编译类型看定义时“ = ”号的左边,运行类型看等号的右边。Animal 是 Dog和Cat的父类Animal animal = new Dog( );父类引用可以指向子类对象。animal是.

2022-03-05 13:01:08 252

原创 方法重写/覆盖(override)个人笔记

方法重写:就是子类有一个方法和父类(或其他上级类)的某个方法的名字,返回类型,参数一样(定义的形式一样),那么就称子类的这个方法覆盖了父类的方法。细节:如果AA类是BB类的父类,那么方法public AA getInfo( ) { }和 public BB getInfo( ) { }构成重写,子类方法的返回类型BB是父类返回类型AA的子类。以上截图来源于B站up韩顺平...

2022-03-03 22:19:59 38

原创 super关键字(个人笔记)

super:代表父类的引用,用于访问父类的属性,方法和构造器。基本语法:1,super . 属性名。用于访问父类的属性,但是不能访问父类的private属性;2,super.方法名(参数列表)。用于访问父类的方法,但是不能访问父类的private方法;3,super(参数列表)。访问父类的构造器,只能放在子类构造器的第一句,只能出现一句,不能和this()同时出现在同一个构造器中。...

2022-03-03 21:34:50 152

原创 面向对象——继承(个人笔记)

当多个类存在相同的属性(变量)和方法时,可以从这些类中抽象出父类(父类中有其他类共同拥有的属性和方法),在父类中定义这些相同的属性和方法,所以的子类不需要重新定义这些属性和方法,只需要通过关键字extends来声明继承父类即可。...

2022-03-02 10:46:26 112

原创 构造器(个人笔记)

构造器(constructor)即是构造方法。使用构造器就可以在创建新对象时直接给对象赋值即对对象初始化。构造器不创建对象只是初始化对象。基本语法:[修饰符] 方法名(形参列表){方法体}1,构造器的修饰符可以是默认(不写修饰符),也可以是public,private,protected;2,构造器无返回值;3,方法名与类名必须一致;4,参数列表与成员方法规则一样;5,构造器的调用由系统完成...

2022-02-28 22:07:59 150

原创 面向对象——封装(个人笔记)

封装:把抽象出来的数据(属性)和对数据的操作(方法)封装到一起,数据被保护在内部,程序的其他部分只有通过被授权的操作(方法)才能对数据进行操作。封装的好处:1,隐藏实现细节;2,可以对数据进行验证,保证数据安全合理。封装步骤:1,使用private将属性进行私有化让其不能直接修改属性;2,提供一个公共的(public)set方法,用于对属性进行判断和赋值;3,提供一个公共的(public)get方法,用于获取属性的值...

2022-02-28 12:19:29 40

原创 访问修饰符(个人笔记)

java中有四种访问控制修饰符,用于控制方法和属性(成员变量)的访问权限(范围)。一,公开级别:用public(公共的)修饰,对外公开;二,受保护级别:用protected(受保护的)修饰,对子类和同一个包中的类公开;三,默认级别:无修饰符,对同一个包中的类公开;四,私有级别:用private修饰修饰,只有类本身可以访问,不对外公开。...

2022-02-24 13:47:25 125

原创 包(个人笔记)

包相当于一个文件夹,类相当于文件夹中的子文件;包的作用:一,区分相同名字的类;二,当类很多时,方便管理类;三,控制访问范围;包的基本语法:package(关键字,表示打包)xx.(包名)命名规则:只能包含数字,字母,下划线,小圆点(.),不能以数字开头和使用关键字,保留字;命名规范:一般是小写字母+小圆点;一般以:com.公司名.项目名.业务模块名java中常用的包:1,java.lang.* //lang包是基本包,默认引入;2,java.util.* //ut

2022-02-19 00:10:06 355

原创 idea个人常用快捷键笔记

删除当前行:Alt+D复制当前行:Ctrl+D补全代码:Alt+ /添加注释或取消注释:Ctrl+/快捷键设置

2022-02-06 12:11:24 226

原创 java中使用递归方法计算斐波那契的值并输出斐波那契数列

import java.util.Scanner;public class RecursionExercise01 { public static void main(String[] arge) { Scanner myScanner = new Scanner(System.in); System.out.println("请输入要打印的斐波那契数列的个数"); int i = myScanner.nextInt(); System.out.println("请输入要打印的斐波那契.

2021-11-27 21:59:16 1121

原创 二维数组及其细节(个人学习笔记)

定义二维数组:动态初始化;方式一:类型[ ][ ] 数组名称= new int[大小][大小 ];如 int[ ][ ] i = new int[1][2];方式二:可以先声明一个二维数组:类型[ ][ ] 数组名称;再定义或者说开辟空间:数组名称= new int[大小][大小 ];如:int[ ][ ] i; i = new int[1][2];方式三:列数不确定在定义二维数组时先定义二维数组里面存储一维数组的空间大小或者说个数,一维数组里...

2021-11-20 16:28:43 435

原创 java中使用二维数组打印杨辉三角,行数自定义。

import java.util.Scanner;public class YangHui { public static void main(String[] arge) { //打印一个杨辉三角,行数由用户自己输入 //1 //11 //121 //1331 //14641 //1.5.10.10.5.1 //思路 //1.每行的元素个数和所在行数相同第i行有i个元素 //2.每行的开头和末尾的元素均为1 //3.从第三行开始每行除却开头和末尾元素外其他.

2021-11-20 15:18:44 494

原创 java进行冒泡排序

public class BubbleSort { public static void main(String[] arge) { //使用冒泡排序将数组[1,48,687,4654,345,1354]进行从大到小和从小到大排序 //思路; //1.先定义一个数组int[] array = {1,48,687,4654,345,1354} //2.因为需要交换数组值的位置所以需要一个中间变量int temp //3.使用循环控制数组下标来控制数值值的比较每次只能排序一个值,再在外层.

2021-11-18 23:15:56 537

原创 java中打印大小写字母

public class Homework05 { public static void main(String[] arge) { //输出a-z的大小写字母 //方法一 for(int i = 65; i <= 122;i++) { if(i >= 65 && i <= 90) { System.out.println((char)i); } if(i >= 97 && i <= 122) {.

2021-11-14 16:07:54 3395

原创 使用java求水仙花数,数值由用户输入

个人笔记import java.util.Scanner;public class Homework04 { public static void main(String[] arge) { //判断一个数是否为水仙花数, //水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身,例如:153 = 1*1*1 + 5*5*5 +3*3*3 //思路: //153 % 10 =3;15 % 10 = 5;1 % 10 = 1 //1.定义一个Scanner类型变量接收

2021-11-14 13:15:27 448

原创 java中使用for循环打印空心棱形,层数由自己输入

java中使用for循环打印空心棱形,层数由自己输入。个人笔记思路:化繁为简1.先打印一个固定层数的实心棱形(层数分奇偶数),将打印棱形分为打印一个三角形和倒三角形,两个三角形组合成棱形。2.偶数层的棱形有两层最大 “ * ”,分别在三角形的最后一行和倒三角形的第一行3.奇数层的棱形只有一层最大 “ * ”,因为要分为两个三角形,所以可以先将奇数加一变成偶数4.先将三角形挖空再将倒三角形挖空(使用if判断)5.使用java.util.Scanner创建Scanner变量用于接收自

2021-11-12 22:52:14 698

原创 有if无else

// 练习;//根据淡旺季和年龄打印票价//旺季 4-10. 成人18-60 60元 未成年小于18 半价 老人大于60岁(1/3)//淡季 成人40 其他20import java.util.Scanner;public class NestedIf { public static void main(String[] arge) { Scanner jiScanner = new Scanner(System.in); System.out.pri.

2021-11-07 17:05:27 2498 1

空空如也

空空如也

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

TA关注的人

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