自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java中封装代码

第一步:属性私有化.第二部:一个属性对外提供两个set和get方法,外面程序只能通过set方法修改,只能通过get方法读取,可以在set方法中设立关卡来保证数据的安全性.不带有static的方法称为实例方法,实例方法的调用必须先new对象.封装的作用:保证内部结构安全,屏蔽复杂,暴露简单....

2021-08-30 19:33:31 204

原创 java中的构造方法

当一个类没有提供任何构造方法的时候,系统会默认提供一个无参的构造方法.(这个构造方法被称为缺省构造器)构造方法是通过new 运算符来调用的.构造方法的语法:[修饰符列表] 构造方法名(形参){ 方法体;}构造方法名必须和类名一致.构造方法不需要返回值类型,也不能写void,写上void就表示是普通方法了.当一个类中手动的提供了构造方法,那么系统将不在提供无参数的构造方法.构造方法也支持方法重载.方法重载的特点:在同一个类中,方法名相同,参数列表不同....

2021-08-30 19:28:38 177

原创 Java中变量的默认值

变量必须先声明,再赋值才能访问.但是对于成员变量来说,可以不手动赋值,系统会默认赋值.类型 默认值byte 0short 0int 0double 0.0long 0Lfloat 0Fboolean false;char \u0000引用数据类型 nullnull是一个java关键字,全部小写,表示空,是引用类型的默认值...

2021-08-30 01:02:30 747

原创 创建对象时JVM内存结构

null是一个java关键字,全部小写,表示空,是引用类型的默认值.堆内存中存储对象,以及对象的实例变量,局部变量存在栈中.保存了对象内存地址的变量,叫做引用.

2021-08-30 00:51:07 140

原创 java中类的定义

类=属性+方法.属性描述状态.方法描述动作或行为。定义类的格式:[修饰符列表] class 类名{ 类体=属性+方法.}修饰符列表可以省略.属性都是以变量的形式存在的,因为属性对应的是数据,数据只能放在变量中.方法体内声明的变量叫做:局部变量.方法体外声明的变量叫做:成员变量(也叫做实例变量,就是属性)。java中所有的类都属于引用数据类型....

2021-08-30 00:45:43 295

原创 OOA,OOD,OOP

OOA:面向对象分析.OOD:面向对象设计.OOP:面向对象编程.

2021-08-30 00:39:00 65

原创 面向对象和面向过程的区别

对于c语言来说,是完全面向过程的.对于c++语言来说,是一半面向过程,一半面向对象(c++是半面向对象的).对于java来说,是完全面向对象的.面向过程注重步骤,也注重功能实现的因果关系.面向过程的缺点:耦合度高,导致扩展力差.面向过程的优点:对于小型项目(功能),采用面向过程的方式进行开发,效率较高,不需要前期进行对象的提取,模型的建立,可以直接开始干活,编写因果关系,实现功能.面向对象的优点:耦合度低,扩展力强....

2021-08-30 00:37:39 91

原创 java中的方法递归

方法递归:方法自己调用自己.方法递归一定要有结束条件,不然最终就会导致栈内存溢出,这是因为一直在压栈,从来没有弹栈.如果递归是有结束条件的,也有可能在递归的时候发生栈内存溢出错误,又可能是因为递归的太深了,栈内存不够了,一直在压栈.能用循环解决的尽量不要使用递归解决.如果真的遇到了栈内存溢出:第一步:先检查递归的结束条件对不对,如果递归的条件不对,需要继续修改.第二部:如果递归的条件没问题,这个时候需要手动调整JVM的栈内存初始化大小,可以调大一点,在命令行输入java -X命令

2021-08-29 11:21:49 129

原创 java中的方法重载

方法重载的优点:代码整齐美观,功能相似的,可以让方法名相同,更易于以后代码的编写.方法重载的发生条件:1.在同一个类中.2.方法名相同.3.参数列表不同(参数的个数不同,参数的类型不同,参数的顺序不同).只要同时满足以上三个条件,我们就认定方法与方法之间发生了重载.不在同一个类中,不叫作方法重载.方法重载与返回值类型无关.方法重载与修饰符列表无关....

2021-08-29 11:13:07 65

原创 java中栈的数据结构

栈数据结构特点:先进后出.

2021-08-29 11:02:45 69

原创 java中JVM内存结构

JVM中主要的三块内存空间:栈,堆,方法区,除了这三块之外还有其他的.

2021-08-29 11:01:04 69

原创 java中的方法

java中的方法就相当于c/c++中的函数.程序开始执行的时候都是先执行main方法,因为main方法是一个入口.在java语言中所有的方法体中的代码都必须遵循自上而下的顺序依次执行.main方法不需要手动调用,是由JVM调用的.方法定义在类体当中,方法定义的先后顺序没有关系,可以写在main方法前,也可以写在main方法后.方法中的变量都属于局部变量,在方法结束之后,局部变量占用的内存会自动释放.方法定义的格式:[修饰符列表] 返回值类型 方法名(形参列表){ 方...

2021-08-29 10:47:08 217

原创 java中public class和class

一个java源文件中可以定义多个class.public的类不是必须的,可以没有.在源文件中只要有一个class的定义,那么必然会对于生成一个class文件.public的类可以没有,但如果有的话,public修饰的类名必须和源文件名保持一致,不然会报错.public的类如果有的话,只能有一个.在一个源文件中,如果有多个类,每个类都可以编写入口,一般一个软件的执行入口是一个,不会出现多个的.创建一个java文件,起名123.java可以,123其实并不是标识符,只是一个文件名,但在1

2021-08-27 22:46:27 262

原创 java中的标识符

标识符的命名规则:标识符只能由数字,字母,下划线,美元符号$组成,不能有其他符号.标识符不能以数字开始.标识符严格区分大小写.关键字不能做标识符.理论上标识符没有长度限制.标识符的命名规范:类名,接口名:首字母大写,后面每个单词首字母大写.变量名,方法名:首字母小写,后面每个单词首字母大写.常量名:全部大写,每个单词之间使用下划线衔接.关键字全部都是小写的....

2021-08-27 22:29:21 165

原创 java中的break和continue

break和continue都是转向语句.break用在两个位置,其他位置不行.第一个位置:switch语句当中,用来终止switch语句的执行(防止发生case穿透现象).第二个位置:break语句用在循环语句当中,用来终止循环的执行.break语句会让离他最近的循环终止结束.用break来终止指定的循环结束:第一步:给循环起一个名字例如:a:for(;;){ b:for(;;){}}第二步:终止:break b;continue语...

2021-08-27 01:04:25 128

原创 java中的while循环和do...while循环

while循环语法格式:while(布尔表达式){ 循环体;}如果布尔表达式的结果为true,就执行循环体中的java语句,直到布尔表达式的结果为false,结束循环.while循环的次数是:0次-n次.当一开的布尔表达式的结果是false时,就会一次都不执行,跳过循环.do...while的语法格式:do{ 循环体;}while(布尔表达式);//注意:while的小括号后面有;分号.对于do..while循环来说,循环体至少执行一次...

2021-08-27 00:56:49 930

原创 java中的for循环

语法格式:for(初始化表达式;布尔表达式;更新表达式){ 循环体;//循环体由java语句组成.}初始化表达式最先执行,并且在整个循环中只执行一次.如果布尔表达式的结果为true的话,就会继续循环下去,如果布尔表达式的结果为false的话,就会跳出循环.如果在for循环初始化表达式里建立变量,或者在循环体里建立变量,都属于局部变量,在for循环结束后就会被释放.初始化表达式中的变量可以在for里面建立,也可以在for的外面建立,只是生存周期不同....

2021-08-27 00:51:07 184

原创 java中的switch语句

switch也是选择语句,也叫做分支语句.语法格式:switch(值){case 值1: java语句.. java语句.. break;case 值2: java语句.. java语句.. break;case 值3: java语句.. java语句.. break;default: java语句......

2021-08-27 00:36:26 248

原创 java中的if语句

if语句是分支语句,也叫做条件语句.if语句的语法格式:第一种写法:if(布尔表达式){ java语句....}如果布尔表达式的结果是true,就执行大括号里面的java语句,否则就不执行.第二种写法:if(布尔表达式){ java语句... 分支1}else{ java语句... 分支2}如果布尔表达式的结果是true,就执行分支1,否则就执行分支2.对于if语句来说,在任何情况下只能有1个分...

2021-08-27 00:28:40 1355

原创 java中的赋值运算符

赋值运算符包括"基本赋值运算符"和"扩展赋值运算符"基本的赋值运算符:=扩展赋值运算符:+=,-=,*=,/=,%=.....扩展赋值运算符在编写的时候,两个符号之间不能有空格.byte i=10;i+=10和i=i+10不完全一样,只能说相似,其实本质上不是完全相同.i=i+10;会报错,10是int类型的数值,i+10最后是int类型的,不能直接赋值给byte类型的i.但i+=10不会报错,i+=10就相当于i=(byte)(i+10);...

2021-08-27 00:18:38 112

原创 java中的条件运算符

条件运算符(三目运算符)格式:布尔表达式?表达式1:表达式2.布尔表达式的结果为true时,表达式1的执行结果作为整个表达式的结果.布尔表达式的结果为false时,表达式2的执行结果作为整个表达式的结果.最好在输出语句里面使用这个运算符....

2021-08-27 00:18:27 58

原创 java中字符串连接运算符

+运算符+运算符在java语言中有两个作用作用1:求和.作用2:字符串拼接.当+运算符两边都是数字类型的时候进行求和.当+运算符的任意一边是字符串类型,那么这个+会进行字符串拼接操作.!!!字符串拼接完后的结果还是一个字符串.当一个表达式当中有多个+号时,遵循自左向右的顺序依次执行(除非有的添加了小括号的,优先级更高).String时字符串类型,不属于基本数据类型,属于引用数据类型,其中S是大写,不是string....

2021-08-27 00:18:09 266

原创 java中的逻辑运算符

& 逻辑与(只要有一边是false,结果就是false,可以看作并且)| 逻辑或(只要有一边是true,结果就是true,可以看作或者)!逻辑非(取反,注意运算符的顺序,不清楚的直接加小括号)&& 短路与(当左边的表达式为false时,右边的表达式不执行,这样的现象被称为短路)|| 短路或(当左边的表达式为true时,右边的表达式不执行)逻辑运算符两边要求都是布尔类型,并且最终的运算结果也是布尔类型.短路与&&与逻辑与&的运算没有任何区

2021-08-25 17:39:28 124

原创 java中的关系运算符

关系运算符有:>,>=,<,<=,==,!=.关系运算符中如果有两个符号的话,两个符号之间不能有空格.例如:> =.所有的关系运算符的运算结果都是布尔类型.不是true就是false,不可能为其他值.在java语言中,=是赋值运算符,==是关系运算符,判断是相等....

2021-08-25 16:24:54 105

原创 java中的算数运算符之++

++(自加1)不管++出现在变量前还是变量后,总之++执行结束之后,变量的值就一定会加1.int i=10;int j=i++;//j=10;当++出现在变量后,会先做赋值运算,再自加1.int i=10;int j=++i;//j=11;当++出现再变量前,会先进行自加1的运算,再进行赋值.int k=10;System.out.println(k++);//k++往括号里面传,相当于赋值.可以将上面的语句看成System.out.println(temp);tem

2021-08-25 16:21:47 1156

原创 java中基本数据类型的转换规则

第一条:八种基本数据类型中,除boolean类型不能转换,剩下7种数据类型之间都可以进行转换.第二条:如果整数型字面量没有超出char,byte,short的取值范围,可以直接将其赋值给char,byte,short类型的变量.第三条:小容量向大容量转换称为自动类型转换,容量从小到大的排序为:byte<short(char)<int<long<float<double,其中short和char都占用两个字节,但是char可以表示更大的数,因为char种存储的是文字,字符

2021-08-25 15:40:50 723

原创 java中的布尔型数据类型

在java语言中,boolean类型只有两个值true和false,没有其他值.boolean在实际开发中被使用在逻辑判断当中,通常放到条件的位置上.运算符是有优先级的,不确定的可以加小括号,加了小括号就优先执行.

2021-08-25 15:20:49 507

原创 java中的浮点型数据

浮点型数据包括:单精度浮点型:float(4个字节)双精度浮点型:double(8个字节)double更加精确.float和double存储数据的时候都是存储的近似值.long类型占用8个字节,float类型占用4个字节.相比long和float,float的容量更大.任意一个浮点型的数据类型都要比整数型类型空间大.float容量>long容量.java中规定,任何一个浮点型数据默认被当作double来处理,如果想让这个浮点型数据字面量被当作float来做处理,需要在字面量

2021-08-25 15:17:46 479

原创 java中多种数据类型混合运算

多种数据类型做混合运算的时候,最终的结果是最大容量对应的类型.如果运算中有long类型的数据,其他数据就会先转成long类型的再做运算.char+short+byte这个除外.因为char+short+byte做混合运算时,各自会先转换为int再做运算.在java中,计算结果不一定时精确的.java中规定,int类型和int类型最终的结果还是int类型.例如:int temp=10/3;结果为3.int temp =1/2;结果为0....

2021-08-25 13:56:04 482 1

原创 byte,short,char的混合运算

char,short,byte做混合运算的时候,是各自先转换为int再做运算.char i='a';byte j=1;int k=i+j;//不会报错,正确的.short s=i+j;//会报错,编译器不知道这个加法最后的结果是多少,只知道是int类型.int a=1;byte b=a;//会报错,编译器只知道a是int的类型,不知道所代表的具体数值,所以会报错....

2021-08-25 13:51:00 470

原创 java中二进制原码,反码,补码

计算机在任何情况下都只能识别二进制计算机在底层存储数据的时候,一律存储的是二进制的补码形式.计算机采用补码形式存储数据的原因是:补码形式效率最高.二进制有原码,反码,补码.(对于一个二进制位来说,最左边的位是符号位,0表示正,1表示负)对于一个正整数来说:二进制原码,反码,补码是同一个,完全相同.int i=1;对应的二进制原码:00000000 00000000 00000000 00000001;对应的二进制反码:00000000 00000000 00000000 0000

2021-08-25 11:50:25 206

原创 java中的整型数

整型数在java语言中共4种类型:byte 1个字节(最大值127)short 2个字节(最大值32367)int 4个字节(2147483647是int最大值,超了这个范围可以使用long类型)long 8个字节1个字节=8个二进制位1byte=8bit在java语言中整数型字面量有4种表示形式:十进制:int a=10;二进制:int b=0b10;(二进制以0b开始)(JDK8的新特性)八进制:int c=010;(八进制以0开始)十六进制:int d=0x

2021-08-25 00:20:37 775

原创 java中的char

char可以存储一个汉字.java中的char占用两个字节,汉字占用两个字节,正好.char的取值范围:0-65535.char采用unicode编码方式.char类型的字面量使用单引号括起来,例如:char i='a',char i='0',char i='峰',使用双引号扩起来的是字符串不是字符,String无法转换为char,会报错....

2021-08-24 23:44:14 375

原创 java中的转义字符

java语言中"\"负责转义System.out.println();//会换行System.out.print();//不会换行输出一个':System.out.println('\''');\'表示一个普通的单引号.输出一个\:System.out.println('\\');\\表示一个普通的反斜杠输出"user":System.out.println("\"user\"");System.out.println(" ' ");这个'在这里只是一个普通的字符,没有特殊含义.

2021-08-24 23:34:01 1063

原创 java中的字符编码和计算机存储单位

计算机只能识别二进制.1byte=8bit,1字节=8比特.1bit就是一个1或0.byte b=2,在计算机中是这样表示的:00000010.short s=2,在计算机中是这样表示的:00000000 00000010.以此类推.

2021-08-24 20:38:37 129

原创 java中的数据类型概述

数据类型的作用:数据类型用来声明变量,程序在运行过程中根据不同的数据类型分配不同大小的空间.数据类型在java语言中包括两种:第一种:基本数据类型基本数据类型又可以分为四大类八小种第一类:整数型(byte,short,long,int)第二类:浮点型(float,double)第三类:布尔型(boolean)boolean只有两个值true和false,true表示真,false表示假.第四类:字符型(char)java中规定字符型字面量必须使用单引号括起来.第二种:

2021-08-24 17:30:01 147

原创 JDBC中Statement和PreparedStatement的区别

Statement存在sql注入问题,PreparedStatement解决了sql注入问题.Statement是编译一次执行一次,PreparedStatement是编译一次可以执行n次,PreparedStatement的效率较高一些.PreparedStatement会在编译阶段做类型的安全检查.综上所述:PreparedStatement使用较多,只有在极少数情况下使用StatementStatement支持SQL注入,凡是业务方面要求需要进行sql语句拼接的,必须使用Stateme

2021-08-24 14:56:53 148

原创 JDBC编程六步代码实现

import java.sql.*;public class Database8 { public static void main(String[] args) { Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; try{ Class.forName("com.mysql.cj.jdbc.Driver");//注册驱动.

2021-08-24 14:51:15 96

原创 JDBC编程六步代码实现

import java.sql.*;public class Database8 { public static void main(String[] args) { Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; try{ Class.forName("com.mysql.cj.jdbc.Driver"); .

2021-08-24 14:47:27 53

原创 mysql中的悲观锁和乐观锁

悲观锁:事务必须排队执行,数据锁住了,不允许并发.(行级锁:在select的句子后面添加for update)乐观锁:支持并发,事务不需要排队,只不过需要一个版本号

2021-08-24 14:45:29 53

空空如也

空空如也

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

TA关注的人

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