![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 54
蚂蚁牙黑147
这个作者很懒,什么都没留下…
展开
-
高内聚低耦合
`元素(方法、类)与元素依赖度不要太高`;我们在设计程序时应该`降低元素与元素之间的直接关系`;降低元素与元素之间的耦合性原创 2023-09-16 19:11:03 · 149 阅读 · 0 评论 -
synchronized锁住的到底是谁???
类声明后,new出来的实例对象,在堆中都有自己的独立空间和引用地址,这时候我们可以认为这些实例都是。而静态成员(static修饰的成员、方法)是跟类一起加载的,也是存放在方法区,被所有线程共享。在静态方法上进行了声明则锁的是这个类,也就是我们常说的。,所以在实例上加的锁与其它的实例就没有关系,互不影响。从锁的是谁的纬度上一共有两种情况;的,所以类也是被所有线程共享的。类信息是存放在方法区的,整个JVM中只有一份。原创 2023-05-06 10:46:50 · 624 阅读 · 1 评论 -
java基础-数组
java基础-数组数组的定义数组是相同数据类型的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们,下标从0开始。表达式:int [] arr=new int [10]//这里面可以存放10个int类型的数字//赋值,没赋值时默认值是0arr[0]=1;arr[1]=2;获取数组长度//变量名.length就可以获取数组的长度了int [] arr= new int[10];原创 2021-07-25 18:33:58 · 332 阅读 · 0 评论 -
java基础-冒泡排序
java基础-冒泡排序冒泡排序无疑是最为出名的排序算法之一,总共有把大排序!两层循环,外层冒泡轮数,里层依次比较,江湖人尽皆知。冒泡排序比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换它们的位置每一次比较,都会产生一个最大或者最小的数字下一轮比较则可以少一次排序!依次循环,直到结束!话不对说,上代码!...原创 2021-07-25 16:25:14 · 59 阅读 · 0 评论 -
java基础-方法详解
java基础-方法详解何谓方法方法就是语句的集合,它们在一起执行一个功能方法是解决一类问题的步骤的有序组合方法包含在类或者对象中方法在程序中被创建,在其他地方被引用就如我们常见的输出语句:System.out.println();那么它是什么?剖析:System是Java中的一个,out是一个对象,println()是out对象中的一个方法设计方法的原则:一个方法只完成一个功能,这样有利于我们后期的扩展。方法的定义当方法中遇到return,就会终止这个方法形参与实参:方法的原创 2021-07-23 23:16:08 · 88 阅读 · 0 评论 -
java基础-流程控制
java基础-流程控制break语句break用于强行退出循环,不再执行循环中剩余的语句解析:定义一个int类型的i变量,判断它是否小于100,小于100则进入循环体,循环体里又有一个判断,判断当它等于30时,则break跳出循环,但是程序也会执行循环外的语句continue语句用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定解析:如图;当i除以10等于0时,就遇到了continue语句,它就会结束本次循环,然后进行下一次循环的判定,所以他没有执行后面的打印原创 2021-07-22 22:33:41 · 60 阅读 · 0 评论 -
java基础-循环结构
java基础-循环结构while循环表达式:while(布尔表达式){语句块}只要布尔表达式为true,就会一直循环,走语句块想让程序停下来,就需要布尔表达式为flase来结束循环实例:do while循环表达式:do{语句块}while(布尔表达式);对于while循环来说,如果不满足条件,则不能进入循环,但do while 则是即使不满足条件,也会执行一次与while的区别:while是先判断再执行,do while是先执行再判断do while 总是保证循环原创 2021-07-22 21:49:28 · 58 阅读 · 0 评论 -
Java基础-选择结构
Java基础-选择结构if语句单选结构://判断布尔表达式的结果是否为true,为true则执行语句1,为flase则跳过if(布尔表达式){ 语句1}双选结构://判断布尔表达式的结果是否为true,为true则执行语句1,为flase则执行语句2if(布尔表达式){ 语句1}else{ 语句2}多选结构:解析:不解析了,太简单了!****解析:首先定义成绩为50分,第一个if是判断grade成绩是否>=0,大于就执行里面的第二个if,这就是原创 2021-07-22 17:17:34 · 51 阅读 · 0 评论 -
java基础-用户交互
用户交互(Scanner)Scanner类在Java.util.Scanner包中,它可以通过Scanner类来获取用户输入的值基本语法Scanner sc = new Scanner(System.in);String str = sc.next();//定义一个String类型的str,接收用户输入的值next()方法和nextLine()方法的区别首先我们先来一个小实例:通过以上可以看出:next()方法:会将后面输入的空格当做分隔符或者结束符,不能得到带有空格的字符串nextL原创 2021-07-22 16:32:27 · 265 阅读 · 0 评论 -
Java基础-运算符
Java基础-运算符运算符## 二元运算符(需要两个操作数才能进行运算)+(加),-(减),*(乘), /(除)都属于二元运算符,一元运算符(只需要一个操作数就能进行运算)如++(自增),–(自减)都属于一元运算符看到这里会有点迷惑,为什么a=5,b=3,c=5?这是因为a++时,代码执行后,先给b赋值,此时b=3,然后a再自增,此时a=4,++a时,代码执行前,a就开始自增了,此时a=5,然后再给c赋值,此时c=5,所以我们可以理解为,a++时:先赋值后自增;++a时:先自增再赋值三元运原创 2021-07-18 22:25:20 · 576 阅读 · 0 评论 -
Java基础-类型转换
类型转换优先级低 --> 高byte,short,char->int->long->float->double看到这里就有很多小伙伴感到纳闷了,明明long占8个字节,float只占4个字节,为什么float的优先级要比long高呢?这是因为浮点数类型的优先级一定大于整数类型强制转换有高容量转低容量,是需要强制转换的,如下图:我们声明了一个数据类型为double的变量b,当我们用in原创 2021-07-18 21:44:22 · 78 阅读 · 0 评论 -
java基础-数据类型
java基础-数据类型Java的数据类型第一种:基本类型整数类型:byte(一个字节),short(两个字节),int(四个字节), long(八个字节)```javalong num4 = 30L; //long类型要在数字后面加个L,区分它是long类型```浮点类型:float(四个字节),double(八个字节)float num5 = 50.1F; //float类型要在数字后面加个F,区分它是float类型字符类型:char(两个字节)boo原创 2021-08-01 20:50:44 · 54 阅读 · 0 评论 -
# java基础-标识符、关键字
java基础-标识符、关键字标识符所谓标识符,就是你起的一个名字,是你用来标识变量名、符号常量名、函数名、数组名、文件名、类名、对象名等的。标识符只能以美元符号($)、字母(A-F a-f)、下划线(_)开始命名标识符区别大小写,如下:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OPeC668G-1626591170224)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-imag原创 2021-07-18 14:52:03 · 155 阅读 · 0 评论 -
Java基础-注释
Java基础-注释1.什么是注释:当代码量多且复杂时,我们就会用到注释,注释并不会被程序执行,它只是写给我们程序猿看的,方便整理代码,书写注释是个好习惯!2.注释方式:单行注释:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YTBfvsoC-1626591098647)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210717173219909.png)]原创 2021-07-18 14:51:15 · 70 阅读 · 0 评论