● Java基础篇
文章平均质量分 58
介绍java基础
程序员的时光
用心写好每一篇文章。
展开
-
创建SpringBoot项目错误: Error: Cannot download ‘https://start.spring.io/starter.zip?type=mav
创建SpringBoot项目时,如下,选择start service URL时,我们自定义。搞笑的是还加个200 OK,不太明白这什么意思?我猜原因可能与网络有关系吧,,但是不重要了、、、然后就能成功创建了!原创 2022-08-16 19:41:29 · 684 阅读 · 0 评论 -
图解堆排序,带你彻底了解清楚!
写在前面:大家好,我是时光。今天给大家带来的是排序算法中的堆排序,这种排序跟二叉树相关。我采用图解方式讲解,争取写透彻。话不多说,开始!思维导图:堆排序导图1,堆排序概念堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。相关概念:1.1,二叉树二叉树特征:每个节点最多只有2个子节点(不存在度大于2的节点)1.2,满二叉树满二叉树满二叉树:叶子节原创 2021-07-15 10:20:45 · 2187 阅读 · 4 评论 -
深入浅出SpringMVC系列~
写在前面:小伙伴儿们,大家好!这次让我们一起来入门学习SpringMVC~思维导图:1,环境配置我们建一个Maven项目,把我们所需要的依赖引入进去;大概是下面这样;<dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactI...原创 2020-05-22 08:39:18 · 448 阅读 · 9 评论 -
Java中split函数的用法
1.定义Java中的 split 函数是用于按指定字符(串)或正则去分割某个字符串,结果以字符串数组形式返回;例如:package com.java.model;public class test { public static void main(String[] args) { String str="1234-5678"; String[] s=st...原创 2019-07-11 10:10:21 · 1527 阅读 · 0 评论 -
Java多线程——多线程的引入
目录1.多线程定义2.多线程应用1.多线程定义定义:同时对多项任务加以控制;多线程,顾名思义,就是可以多件事情一起干;比方说,一边听歌,一边吃饭,这就是多线程;先听歌后吃饭或者先吃饭后听歌,这就是单线程;程序里同时执行多个任务并且加以控制,这个是java多线程的含义。同时干多个事,能充分利用cpu 内存等硬件设备,提高程序运行效率。...原创 2019-06-18 15:21:58 · 302 阅读 · 0 评论 -
Java集合——Set集合和Map集合
1.Set集合;Set集合是Collection接口的子接口,没有对Collection接口进行扩展,里面不允许存在重复的内容;package Month01.Day14.Demo02;import java.util.HashSet;import java.util.Iterator;public class TestSet { public static void ma...原创 2019-01-14 17:51:09 · 430 阅读 · 0 评论 -
Java集合——集合的遍历
1.Iterator;先建立一个Student类:package Month01.Day14.Demo01;public class Student { private String name; private Integer age; public String getName() { return name; } public void setName(S...原创 2019-01-14 11:42:23 · 324 阅读 · 0 评论 -
Java集合——List集合
首先,Collection接口是所有集合的父类,定义了接口的节本方法; List是Collection接口的子接口,也是最常用的接口,此接口对Collection接口进行了大量的扩展,List集合里的元素是可以重复的。 List接口的主要实现类有ArrayList,和LinkedList。在数据量不大的情况下,这两个类性能差别不大,一般情况下,集合里的元素很少变化的,一...原创 2019-01-13 15:29:56 · 305 阅读 · 0 评论 -
Java泛型——泛型方法
泛型方法指返回值和参数都用泛型表示的方法; package Month01.Day05.Demo03;public class Test { public static<T> void f(T t){ System.out.println("t的类型:"+t.getClass().getName()); } public static void main(...原创 2019-01-06 15:07:06 · 271 阅读 · 1 评论 -
Java泛型——通配符泛型
通配符泛型在使用泛型特殊的场景下用到;比如把泛型对象作为方法参数传入方法的时候,就用到通配符泛型;package Month01.Day05.Demo02;import Month01.Day05.Demo01.Cat;import Month01.Day05.Demo01.Dog;import Month01.Day05.Demo01.fanxing;public clas...原创 2019-01-06 15:00:13 · 433 阅读 · 1 评论 -
Java泛型——限制泛型类型
前面说到,泛型可以是任意类型,但有时候需要加以限制才安全;先建一个父类Animal;package Month01.Day05.Demo01;public class Animal { public void print(){ System.out.println("动物"); }} 再写两个子类Dog和Cat;package Month01.Day05.De...原创 2019-01-06 14:42:27 · 3426 阅读 · 0 评论 -
Java泛型——泛型概念
泛型引入定义:使用泛型可以指代任意对象类型; 定义一个C1类:里面有个Integer属性 给出构造方法 以及打印类型 和get set方法 ;package Month01.Day03.Demo03;public class C1 { private Integer a; //a的get方法和set方法 public Integer getA() { retu...原创 2019-01-03 16:56:35 · 502 阅读 · 0 评论 -
Java常用类——Arrays类
Arrays类主要是封装了很多操作数组的工具方法,方便开发者直接调用; 这里举一些常用的方法:1.toString()方法:将指定的数组以字符串的形式展现出来;2.sort()方法:对指定的数组按照数字升序的方式进行排序;3.binarySearch()方法: 使用二分搜索法来搜索指定类型数组,以获取指定值;4.fill()方法,将指定类型值分配给指定类型数组的每个元素;...原创 2019-01-03 09:34:19 · 342 阅读 · 0 评论 -
Java常用类——String和StringBuffer
String:对String类型的对象操作,等同于重新生成一个新对象,然后讲引用指向它;StringBuffer:对StringBuffer类型的对象操作,操作的始终是同一个对象;两者有本质上的区别;package m01d03;public class TestString { public static void main(String[] args) { Strin...原创 2019-01-03 09:00:22 · 286 阅读 · 0 评论 -
Java常用类——Java日期处理类
Date类Date类是jdk给我们提供的标准日期类,在java.util包下;package m01d02;import java.util.Date;public class TestDate { public static void main(String[] args) { Date date=new Date(); System.out.println(dat...原创 2019-01-02 16:13:15 · 263 阅读 · 0 评论 -
Java异常处理——自定义异常
所谓自定义异常,就是用户自己定义的异常,与JDK给我们提供的异常体系不同; 自定义异常都要继承自Exception;package m01d01;@SuppressWarnings("serial")public class CustomException extends Exception{ public CustomException(String message)...原创 2019-01-01 20:14:14 · 460 阅读 · 0 评论 -
Java异常处理——Exception和RuntimeException
Exception是检查型异常,在程序中必须使用try...catch进行处理;RuntimeException是非检查型异常,例如NumberFormatException,可以不使用try...catch进行处理,但是如果产生异常,则异常将由JVM进行处理; RuntimeException用法:package m01d01;public class Exceptio...原创 2019-01-01 18:51:21 · 3681 阅读 · 0 评论 -
Java异常处理——捕获和处理异常,throws和throw关键字
异常的概念:程序在执行过程中,出现意外,这种情况叫做出现了异常;出现 异常之后,程序就终止了,不能继续运行下去;那么,java程序中的异常我们可以捕获然后处理,这样后面的程序就可以继续执行了;上代码:package m12d28;public class ExceptionDemo01 { public static void main(String[] args) ...原创 2019-01-01 10:31:35 · 2800 阅读 · 0 评论 -
Java面向对象——Int与Integer的区别
这里主要讲一下Int与Integer的区别,其中Integer是Int的包装类上代码:package m12d27;public class Demo01 { public static void main(String[] args) { String a="3"; String b="5"; ///调用Integer类的valuesOf方法 把字符串类型转换成...原创 2018-12-27 20:14:30 · 279 阅读 · 0 评论 -
Java面向对象——匿名内部类
匿名内部类,指的是实例化内部对象 ,就是没有名字的内部类;作用:假如某个类只使用一次,则可以使用匿名内部类; 先定义一个接口A;package m12d27;public interface A { public void say();}定义一个类B;package m12d27;public class B implements A{ public...原创 2018-12-27 16:36:48 · 348 阅读 · 0 评论 -
Java面向对象——instanceof关键字
作用:判断一个对象是否属于一个类格式:对象+instanceof+类 返回布尔类型 运用之前的Animal类:package m12d27;public class Animal { public void say(){ System.out.println("我是一个动物"); } }两个子类:package m12d27;public c...原创 2018-12-27 15:24:11 · 308 阅读 · 0 评论 -
Java面向对象——Object类
Object类是所有类的父类在查看Object源码过程中,用Ctrl+O快捷键可以快速查找 Object类常用的两个方法1,public String toString() 返回该对象的字符串表示。2,public boolean equals(Object obj) 指示其他某个对象是否与此对象“相等”先看toString()方法:package m12d27;...原创 2018-12-27 10:31:08 · 309 阅读 · 0 评论 -
Java面向对象——多态
Java中的多态性表现:1,方法的重载和重写;2,可以用父类的引用指向子类的具体实现,而且可以随时更换为其他子类的具体实现;先建一个父类Animals;package m12d26;public class Animal { public void say(){ System.out.println("我是一个动物"); } }再建两个子类:pack...原创 2018-12-26 15:45:15 · 397 阅读 · 0 评论 -
Java面向对象——接口(interface)
1.接口定义:一种特殊的“抽象类”,没有普通方法,由全局常量和公共的抽象方法所组成;接口定义用关键字interface先定义一个A接口:package m10d29;// 定义一个接口public interface A { //定义一个全局变量 public static final String name="java"; //定义一个抽象方法,abstract...原创 2018-10-29 21:06:26 · 386 阅读 · 0 评论 -
Java面向对象——抽象类
在解决实际问题中,常常将被继承的父类定义为抽象类,其功能都由各个子类去实现; 定义:在java中,含有抽象方法的类称为抽象类,同样不能生成对象;注意点:1,包含一个抽象方法的类是抽象类;2,抽象类和抽象方法都要用abstract关键字修饰;3,抽象方法只需要声明而不需要实现;4,抽象类必须被子类(假如不是抽象类)必须重写抽象中的全部抽象方法;5,抽象类不能被实例化;...原创 2018-10-29 16:01:02 · 472 阅读 · 2 评论 -
Java面向对象——final关键字
1.final关键字final在英文中是终结 完结的意思; 使用final声明的类不能被继承;使用final声明的方法不能被子类覆盖;使用final声明的变量不能被修改,即为常量; 1.final修饰的类:先建一个父类fulei:package m10d29;public final class fulei { public static void m...原创 2018-10-29 10:29:24 · 340 阅读 · 0 评论 -
Java面向对象——类的继承
1.继承的定义以及基本使用定义:子类能够继承父类的共有属性和方法;特点:Java中只支持单继承,私有方法不能被继承; 实现继承的类被称为子类(也叫派生类),被继承的类被称为父类(也叫基类). Java的继承通过extends关键字实现. 先写一个父类Animals类:定义两个私有属性 name和age 然后给出共有的set和get接...原创 2018-10-28 22:40:57 · 309 阅读 · 0 评论 -
Java面向对象——String类编程练习
1.字符串反转:将“abcdefg”,通过编程得到一个新的字符串“gfedcba”思路:我们先定义一个新字符串,然后遍历原先字符串;从后往前遍历,将得到的新字符追加到新字符串中package m10d28;public class String_1 { public static void main(String[] args) { String str="abcd...原创 2018-10-28 14:58:00 · 514 阅读 · 0 评论 -
Java面向对象——String类(二)
String类的常用方法及基本使用1.charAt(int index):返回指定索引处的char值package m10d27;public class String_3 { public static void main(String[] args) { String str="abcdefg"; char ch=str.charAt(3); System.out...原创 2018-10-27 15:06:45 · 505 阅读 · 0 评论 -
Java面向对象——String类(一)
1.实例化String类对象有两种方式:package m10d26;public class String_1 { public static void main(String[] args) { //实例化方式一 String name1="张三"; System.out.println(name1); //实例化方式二 String name2=n...原创 2018-10-27 09:23:43 · 724 阅读 · 0 评论 -
Java面向对象——代码块
代码块主要就是{}花括号括起来的代码;主要分为 普通代码块、构造块、静态代码块以及同步代码块四类;1.普通代码块:花括号括起来的代码块package Hello;public class Test { public static void main(String[] args) { int a=1; { a=2; System.out.print...原创 2018-10-26 20:47:09 · 300 阅读 · 0 评论 -
Java面向对象——内部类
内部类的定义:在类的内部定义的类内部类的优点:可以方便的使用类外的属性内部类的缺点:破坏类的基本结构package Hello;public class Outer { private int a=2; //定义内部类 class Inner{ //定义内部方法 public void show(){ System.out.println(a); } ...原创 2018-10-26 17:33:12 · 287 阅读 · 0 评论 -
Java面象对象——import package包关键字
先新建一个类Testpackage Hello;public class Test { public static void main(String[] args) { Person person=new Person(); person.setAge(5); //Person3 lisi=new Person3(); System.out.println(perso...原创 2018-10-26 10:01:44 · 270 阅读 · 0 评论 -
Java面向对象——访问控制权限
Java中,可以通过一些关键字,来设置访问控制权限;主要有 private(私有), package(包访问权限),protected(子类访问权限),public(公共访问权限) private package protected public 同一个类中 是 是 是 是 同一个包中 是 是 是 子...原创 2018-10-26 08:54:38 · 481 阅读 · 0 评论 -
Java面向对象——构造方法,this关键字
1.构造方法:构造方法是一种特殊的方法,对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载。1.1先写一个无参构造方法package Hello;public class Person { //定义类的属性 private String name; private int age;...原创 2018-10-25 11:15:56 · 508 阅读 · 1 评论 -
Java面向对象——用递归求斐波那契数列
1.用非递归方式求斐波那契数列:package Hello;public class Test { public static void main(String[] args) { int[] a=new int[20]; for(int i=2;i<20;i++){ a[0]=1;a[1]=1; a[i]=a[i-1]+a[i-2]; } f...原创 2018-10-23 21:46:17 · 904 阅读 · 0 评论 -
Java面向对象——递归
求一个案例:分别用递归方法和非递归方法求n*(n-1)*(n-2)...3*2*1;非递归方式:用循环求解package Hello;public class Test { static int NotDiGui(int n){ int result=1; for(int i=1;i<=n;i++){ result=result*i; } return...原创 2018-10-23 20:21:39 · 496 阅读 · 1 评论 -
Java中static静态方法与普通方法
Java中方法分为静态方法和普通方法所谓静态方法,就是方法前面加上static关键字,调用静态方法时一般用类名.方法名,当然也可以用对象名.方法名;一般Java中工具类里面的工具方法都用static修饰,作为静态方法;比如:String类里面的将字符串类型变成整形的方法:int b=Integer.parseInt(s),可以将字符串类型的s变成整型b;--------------...原创 2018-10-22 22:14:11 · 10056 阅读 · 0 评论 -
Java中方法的重载
方法的重载是:类里面有两个或者多个重名的方法,但是方法的参数个数、类型、顺序至少有一个不一样,这时候构成方法重载;package Hello;public class Person { //原方法 int add(int a,int b){ System.out.println("原方法"); return a+b; } //方法的重载,参数个数不一样 int a...原创 2018-10-22 17:07:18 · 905 阅读 · 3 评论 -
Java中方法的值传递和引用传递
1.方法的值传递值传递:在方法里面修改变量的值,不会影响到方法外,作用域仅在方法里面package Hello;public class Person { public void speak(int age){ System.out.println("我今年"+age+"岁了"); age=20; System.out.println("在方法里修改的年龄:"+age...原创 2018-10-22 14:48:41 · 415 阅读 · 0 评论