javaSE
永不言弃12345
年轻人总是会找借口说这个东西不是我所感兴趣的,所以我做不好是应该的。 但他们没有注意的是,你面对的事情中感兴趣的是总是少数,这就使得大多数你做事情的态度总是很懈怠,很消极,这使你变成了一个很懈怠得人。当你面对自己感兴趣的东西时,你发现你已经攥不急紧拳头了。
展开
-
java异常
异常:程序在运行时的出现错误通知调用者的一种机制运行时:指的是程序已经编译通过得到class文件,再有jvm执行过程中出现的错误防御编程:EAPA:先操作遇到问题在处理LBYL:在操作之前做充分检查异常的核心思想:EAPAtry-catch基本用法:try{有可能出现异常的语句;}catch(异常类型 异常对象){}finally{异常的出口;}注意事项:try代码块中放的是可能出现异常的代码catch放的是出现异常后的处理行为finally用于处理工作,无论是否发生异常,原创 2020-07-27 09:18:08 · 86 阅读 · 0 评论 -
String,StringBuffer,StringBuilder的区别?
String和StringBuilder及StringBuffer的区别?1.String的拼接会产生临时对象,StringBuilder及StringBuffer不会String的内容不可修改,StringBuffer与StringBuilder的内容可以修改.2.String的拼接会优化为StringBuilder的append()3.StringBuilder及StringBuffer的一些方法是String不具备的StringBuilder及StringBuffer的区别?StringB原创 2020-07-01 16:25:26 · 85 阅读 · 0 评论 -
接口
文章目录接口:interface注意:优点:一般情况下自动类型进行比较接口:interface接口当中的方法都是抽象的,其实可以有具体实现的方法(JDK1.8加入),这个方法是被default所修饰注意:接口当中定义的成员变量默认为常量默认是:public static final ,成员方法默认:public abstract接口是不可以被实例化接口和类之间的关系:implements为了解决java单继承的问题,一个类可以实现多个接口只要这个类实现该接口,那么你就可以进行向上转型原创 2020-06-30 21:16:11 · 71 阅读 · 0 评论 -
抽象类
文章目录抽象类1.抽象方法的定义:2.作用:3. 注意:抽象类1.抽象方法的定义:如果一个方法被abstract所修饰,他就是抽象方法没有具体的实现包含抽象方法的类就是抽象类2.作用:就是被继承3. 注意:抽象类不可以被实例化类内的数据成员,和普通类没有区别如果一个类继承了这个抽象类,那么这个必须重写抽象类当中的抽象方法当抽象类A继承了抽象类B,那么抽象类A可以不重写B中的方法,但是一旦A被继承,那么一定要重写这个抽象方法抽象类或者抽象方法不能被private,也不能是final原创 2020-06-30 21:13:16 · 73 阅读 · 0 评论 -
多态
文章目录1.多态:1.1 什么是多态?1.2多态发生的前提向上转型:重写(复写 覆盖) :override1.3 运行时绑定:(动态绑定)1.4向下转型;2.多态的优点1.多态:1.1 什么是多态?父类引用子类对象父类和子类同名的覆盖方法通过父类引用调用重写的方法的时候,这就是多态多态的核心:类的调用者,不必关心对象的具体类型1.2多态发生的前提向上转型:父类的引用指向子类对象向上转型之后:通过父类的引用,只能访问父类的属性和方法向上转型发生的时机:直接赋值传参返回值重写(复原创 2020-06-30 21:10:12 · 78 阅读 · 0 评论 -
继承
文章目录继承:**this和super的区别?****访问修饰限定符关键字:****final关键字:**组合:has a继承:具备相同的属性和方法,is-a的关系继承的优点:代码的复用子类/派生类父类/基类/超类子类继承了父类的什么?继承了除父类构造方法之外所有的注意点:对于父类的private的字段和方法,子类是无法访问的java一个子类只能继承一个父类子类在构造的时候,要先帮助父类的构造,父类如果有构造方法,子类要显示调用this和super的区别?this代表当前对象原创 2020-06-30 21:02:53 · 70 阅读 · 0 评论 -
链表
链表是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的 。 //头插法 public void addFirst(int data) { Node node = new Node(data); if (head == null) { head = node; return; } node.next = head; head = n原创 2020-06-26 18:35:19 · 70 阅读 · 0 评论 -
顺序表
定义:顺序表使用一段物理地址连续的存储单元一次存储数据元素的数据结构分类:静态数据表:使用定长数组存储动态数据表:使用动态开辟的数组存储 public int[] elem; public int usedSize;//有效元素的个数 public static final int capacity=10; MyArrayList(){ this.elem=new int[capacity]; this.usedSize=原创 2020-06-20 12:08:54 · 91 阅读 · 0 评论 -
String字符串----字节,字符,字符串的转化
1.字符与字符串String (char[] c ) char[] c=new char[]{ 'a','b','c'}; String str=new String(c);String (char[] c ,int offect,int count ) char[] c=new char[]{ 'a','b','c'}; Strin...原创 2020-04-22 12:37:25 · 232 阅读 · 0 评论 -
String----创建字符串及常用方法
创建字符串:字符串常量,直接复制,也代表一个对象2.String构造方法:构造对象String(String original)String(char[] value)String( )String(byte[] bytes)String (StringBuffer buffer)String(stringBuilder builder)public String(...原创 2020-04-22 12:15:26 · 267 阅读 · 0 评论 -
String字符串-----相等比较,画图详解
String str1 = "hello" ;String str2 = "hello" ;String str3 = "hello" ;System.out.println(str1 == str2); // trueSystem.out.println(str1 == str3); // trueSystem.out.println(str2 == str3); //true...原创 2020-04-22 11:58:59 · 286 阅读 · 0 评论 -
instanceof详解
java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。用法:boolean result = object instanceof class参数:Result:布尔类型。Object:必选项。任意对象表达式。Class:必选项。任意已定义的对象类。说明:...原创 2020-04-20 22:45:20 · 348 阅读 · 0 评论 -
时间复杂度 空间复杂度
1.算法效率:时间复杂度 :时间复杂度主要衡量的是一个算法的运行速度空间复杂度:主要衡量一个算法所需要的额外空间1.1时间复杂度:时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。算法种基本操作的执行次数,为算法的时间复杂度。大O的渐进表示法实际中我们计算时间复杂度时,我们其实并不一定要计算精确的执行次数,而只需要大概执行次数,那么这里我们使...原创 2020-04-17 15:56:36 · 125 阅读 · 0 评论 -
字符串,整形,数组的转换 java
1.整形转变为字符串String str=new String();int i=0;str=""+i;str=Integer.tostring(i);str=String.valueOf(i );2.字符串转变为整形static int parseInt(String s) 将字符串参数解析为带符号的十进制整数。int i=Integer.parseInt( str);...原创 2020-04-10 15:52:51 · 121 阅读 · 0 评论 -
构造函数详解
作用:构造方法用来初始化类的对象,与父类的其他成员不同,它不能被子类所继承(子类可以继承父类所有的public成员方法和变量,但不能继承父类的构造方法)。因此,在创建子类对象时,为了初始化从父类继承来的数据成员,系统需要调用其父类的构造方法。如果没有显示的构造函数,编译器会给一个默认的构造函数,并且该默认的构造函数仅仅是在没有显示声明构造函数的情况下创建。如果指定了带参数的构造函数,则系统不会创...原创 2020-04-04 19:25:31 · 110 阅读 · 0 评论 -
一维数组定义与使用
数组定义与使用1.数组的基本用法1.1什么是数组*相同数据类型的集合,内存是连续的1.2创建数组数据类型[] 数组名称=new 数据类型[数组长度] int[] array=new int[5];//定义好了数组没有初始化,默认为0,new产生一个对象 int[] array1=new int[]{1,2,3};//动态初始化 int[] a...原创 2019-10-20 16:23:32 · 3242 阅读 · 0 评论 -
编译型语言和解释型语言的区别
编译型语言:把做好的源程序全部编译成二进制代码的可运行程序。然后直接运行这个程序。解释型语言:把做好的源程序翻译一句,执行一句,直至结束。编译型语言,执行速度快、效率高;依靠编译器、跨平台性差。解释型语言,执行速度慢、效率低;依靠解释器、跨平台性好。Java首先由编译器编译成.class类型的字节码文件,这个是java自己类型的文件 ,然后在通过虚拟机(JVM)从.class文件中读一...原创 2020-03-25 18:06:48 · 88 阅读 · 0 评论 -
Java中基本数据类型存放的位置
基本数据类型是放在栈中还是放在堆中,这取决于基本类型声明的位置。一:在方法中声明的变量,即该变量是局部变量,每当程序调用方法时,系统都会为该方法建立一个方法栈,其所在方法中声明的变量就放在方法栈中,当方法结束系统会释放方法栈,其对应在该方法中声明的变量随着栈的销毁而结束,这就局部变量只能在方法中有效的原因 在方法中声明的变量可以是基本类型的变量,也可以是引用类型的变量。 (1)当声...原创 2020-03-25 17:53:41 · 499 阅读 · 0 评论 -
Java 递归经典题
1.斐波那契数列为1、1、2、3、5、8、13、21、34……此数列从第3项开始,每一项都等于前两项之和,递推公式为F(n)=F(n-1)+F(n-2),n≥3,F(1)=1,F(2)=1。递归:不适用于数字较大的计算,会进行大量的重复计算。 public static int Fibonacci(int n){ if(n==1||n==2){ ...原创 2020-03-20 16:14:45 · 249 阅读 · 0 评论 -
方法的使用
方法和包1.方法的基本用法1.1什么是方法?类似于C语言中的函数存在的意义:能够模块化的组织代码做到代码被重复使用,一份代码可以在多个位置使用让代码更好理解直接调用现有方法开发,不必重复造轮子1.2方法定义:public static 方法返回值 方法名称(参数类型 形参){return ;}方法调用:返回值变量=方法名称(实参)1.3函数调用的执行过程:只有...原创 2020-03-18 19:25:40 · 69 阅读 · 0 评论 -
Java scanner详细
文章目录1.next( ),nextLine( ),nextInt( )的区别2.hastNext( ) ,hasNextLine( )的用法3.代码演示1.next( ),nextLine( ),nextInt( )的区别使用 Scanner 读取字符串/整数/浮点数nextInt( ):只读取整数数值,并在读取输入后把光标留在本行nex( ):读取输入直到遇见空格。此方法不能读取被空...原创 2020-03-18 11:29:13 · 163 阅读 · 0 评论 -
逻辑控制
逻辑控制1.顺序结构按照代码书写的结构运行2.分支结构2.1if语句if(布尔表达式){//条件满足时执行代码 }else{//条件不满足时执行代码}if(布尔表达式){//条件满足时执行代码 }else if(布尔表达式){//条件满足时执行代码 }else{//条件都不满足时执行代码}判定某一年份是否是闰年int year = 2000;if (year %...原创 2020-03-13 16:18:45 · 291 阅读 · 0 评论 -
认识Java
文章目录1.1Java是什么?1.2Java的特点1.3Java的优点2.1运行Java程序1.1Java是什么?优秀的程序设计语言,赏心悦目的语法和易于理解的语义。有一系列计算机软件和规范形成的技术体系,提供了完整的用于软件开发和跨平台部署的支持环境,广泛应用于嵌入式系统,移动终端,企业服务器,大型机等各种场合。1.2Java的特点简单性面向对象分布式健壮性安全性体系结构与中...原创 2020-03-11 14:20:29 · 91 阅读 · 0 评论 -
数据类型与运算符
java一次编译到处运行Java的8种基本内置类型(简单类型)引用类型:string 数组,类,接口;默认值为 null.定义局部变量的时候必须初始化1.1整形变量Int 变量名= 初始值;System.out.println(Integer.MAX_VALUE);System.out.println(Integer.MIN_VALUE);注意事项:int 表示的类型是一个整形...原创 2019-10-10 16:56:37 · 80 阅读 · 0 评论 -
求最大公约数的方法
求最大公约数辗转相除法(欧几里德法):1.大数放在a中,小数放在b中,a/b的余数放在temp中,若temp等于0,则最大公约数为b;2.如若不等于0,则a=b,b=temp进行循环直到temp=0,则b为最大公约数例如15和9 15/9=1……6,9/6=1……3,6/3=0则最大公约数等于3循环:public class Java { ...原创 2019-10-14 22:07:45 · 172 阅读 · 0 评论 -
常见函数的使用
1.Arrays.equals(array,array2)比较两个数组元素是否相等:返回值为true相等返回值为false不相等Arrays.copyOfRange( ) 拷贝部分Arrays.fill(array,9 )全部填充为9Arrays.fill(array,2,7,9)2号下标到7号下标填充为9Arrays.sort( )Arrays.copyOf( )System....原创 2019-10-22 23:08:23 · 99 阅读 · 0 评论 -
10进制转化位2进制,16进制
把十进制整数转化为二进制:1.除基倒取余数法,让十进制不断被2整除,直到商为0,把余数从下到上组合;public static void function(int n){ int t=0;//用来记录位数 int m=0;//用来记录最后的二进数 int r=0;//用来存储余数 while( n!=0){ r=n%2; ...原创 2019-10-10 21:08:28 · 276 阅读 · 0 评论 -
交换两个变量的值
交换两个变量的值:传引用交换class Fun { public int num; public Fun(int num) { this.num = num; } public static void exchange(Fun a ,Fun b){ int temp=a.num; a.num...原创 2019-10-28 22:20:27 · 78 阅读 · 0 评论 -
两种重要接口的使用
Comparable接口当某个类需要比较式Compare< > ,并其中重写public int compareTo( )public class Test4 { public static void main(String[] args) { Students1[] students1=new Students1[3] ; ...原创 2019-11-19 18:41:19 · 84 阅读 · 0 评论 -
Math.Random( )和 random( )的区别
一.RandomRandom类中包含两个构造函数Random( )该构造方法使用一个和当前系统时间对应的相对时间有关的数字作为种子数,然后使用这个种子数构造Random对象Random(long seed)制定一个种子数进行创建生成伪随机数,区间内部的数字生成的几率时均等的常用方法:1.public boolean nextBoolean( )生成一个随机的布尔值 ,tru...原创 2019-11-25 23:11:45 · 1957 阅读 · 0 评论 -
this关键字的使用详解
this关键字的使用:1.引用成员变量:this.变量;变量为成员变量;使用this可以区分成员变量与局部变量;public class Demo { public static void main(String[] args) { Person2 p=new Person2( "zhangsan "); System.out.println(...原创 2019-10-28 21:57:15 · 285 阅读 · 0 评论 -
类和对象
类和对象1.类和对象的概念c语言是面向的过程,关注的是过程,就是所涉及的行为,功能java是面向对象的,整个参与过程所涉及的主体,是通过逻辑将一个个功能连接起来,类就是一类对象的统称,对象就是一个类具体化的实例;一个类主要包含一个事物的属性和行为。类属于引用类型,使用关键字class来声明,一个类可以产生多个对象2.类和对象的实例化实例化:用例创建对象的过程Person pe...原创 2019-11-09 12:19:00 · 87 阅读 · 0 评论 -
面向对象编程
面向对象编程包:package文件夹,同一类型的文件夹包的命名:小写字母并且公司的域名–》倒叙导入包中的类:import java.util.* java提供的程序包工具import java.sql.* 进行数据库开发的支持包import Java.lang 系统常用基础类(String Object)import java.lang.r...原创 2019-11-19 16:25:34 · 120 阅读 · 0 评论 -
顺序表与链表
顺序表与链表1.线性表:是一种在实际中广泛使用的数据结构,n个具有相同的数据元素的有限序列常见的线性表:顺序表,链表,栈,队列,字符串在物理结构上不一定是连续的,在物理存储时,通常以数组和链式结构的形式存储2.顺序表顺序表使用一段物理地址连续的存储单元一次存储数据元素的数据结构采用数组存储分类:静态数据表:使用定长数组存储动态数据表:使用动态开辟的数组存储...原创 2020-02-28 17:19:52 · 169 阅读 · 0 评论