自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Cannot start compilation: the output path is not specified for module “xx“. Specify the output path

原因:项目中此时没有指定class文件生成的路径,若单纯指定module的output路径会导致后续出现无法找到类的Error。解决办法:打开project structure->project, 在下面一栏有project compiler output目标路径文件夹,通常是你项目目录的下面一层;打开(project structure->)module, 在paths栏中选择Inherit project compiler output path;点击apply,ok

2021-01-08 17:11:14 462

原创 File类、递归

第一章 File类1.1 概述java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。1.2 构造方法public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。public File(File parent, String child

2020-08-27 20:59:30 114

原创 JavaSE进阶——线程池、Lambda表达式

第一章 等待唤醒机制1.1 线程间通信**概念:**多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。比如:线程A用来生成包子的,线程B用来吃包子的,包子可以理解为同一资源,线程A与线程B处理的动作,一个是生产,一个是消费,那么线程A与线程B之间就存在线程通信问题。为什么要处理线程间通信:多个线程并发执行时, 在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并且我们希望他们有规律的执行, 那么多线程之间需要一些协调通信,以此来帮我们达到多线程共同操作一份数据

2020-08-25 21:31:45 163

原创 JavaSE进阶——线程,同步

第一章 线程1.1 多线程原理代码如下:自定义线程类: public class MyThread extends Thread{ /* * 利用继承中的特点 * * 将线程名称传递 进行设置 * */ public MyThread(String name){ super(name); } /* * 重写run方法 * 定

2020-08-24 21:51:55 125

原创 异常

第一章 异常1.1 异常概念异常,就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是:异常 :指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。Java处理异常的方式是中断处理。异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不能运行.1.2 异常体系异常机制其实

2020-08-23 21:47:29 114

原创 Map集合

第一章 Map集合1.1 概述现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。Map中的集合,元素是成对存在

2020-08-23 18:15:55 120

原创 List,Set,Collections

第一章 List集合接下来,我们一起学习Collection中的常用几个子类(java.util.List集合、java.util.Set集合)。1.1 List接口介绍java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会将实现了List接口的对象称为List集合。在List集合中允许出现重复的元素,所有的元素是以一种线性方式进行存储的,在程序中可以通过索引来访问集合中的指定元素。另外,List集合还有一个特点就是元素有序,即元素的存入顺序和取出顺序一致

2020-08-22 22:15:36 70

原创 Collection、泛型

第一章 Collection集合1.1 集合概述集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。1.2 集合框架JAVASE提供了满足各种需求的API,在使用这些API前,先了解其继承与接口操作架构,才能了解何时采用哪个类,以及类之间如何彼此

2020-08-22 21:42:56 77

原创 MySQL多表&事务

多表查询: 查询语法: select 列名列表 from 表名列表 where....* 准备sql # 创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME) VALUES ('开发部'),('市场部'),(

2020-08-20 14:20:53 109

原创 MySQL——MySQL约束

DQL:查询语句1. 排序查询 * 语法:order by 子句 * order by 排序字段1 排序方式1 , 排序字段2 排序方式2... * 排序方式: * ASC:升序,默认的。 * DESC:降序。注意: * 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。2. 聚合函数:将一列数据作为一个整体,进行纵向的计算。 1. count:计算个数

2020-08-19 21:52:16 74

原创 JDBC连接池&JDBCTemplate

数据库连接池1. 概念:其实就是一个容器(集合),存放数据库连接的容器。 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。2. 好处: 1. 节约资源 2. 用户访问高效3. 实现: 1. 标准接口:DataSource javax.sql包下的 1. 方法: * 获取连接:getConnection()

2020-08-18 21:34:56 86

原创 JDBC入门

JDBC:1. 概念:Java DataBase Connectivity Java 数据库连接, Java语言操作数据库 * JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。2. 快速入门: * 步骤: 1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.

2020-08-18 21:30:44 61

原创 MySQL——数据库

第一章数据库的英文单词:DataBase 简称 : DB什么数据库?* 用于存储和管理数据的仓库。数据库的特点:持久化存储数据的。其实数据库就是一个文件系统方便存储和管理数据使用了统一的方式操作数据库 – SQL1.1 MySQL数据库软件安装卸载去mysql的安装目录找到my.ini文件复制 datadir=“C:/ProgramData/MySQL/MySQL Server 5.5/Data/”卸载MySQL删除C:/ProgramD

2020-08-02 20:02:17 111

原创 JavaSE基础——API

第1章 API 概述API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的 字典 ,是JDK中提供给 我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学 习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。API使用步骤打开帮助文档。点击显示,找到索引,看到输入框。你要找谁?在输入框里输入,然后回车。看包。java.lang下

2020-07-31 22:33:07 230

原创 JavaSE基础——面向对象

第1章 面向对象思想1.1 面向对象思想概述概述Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下, 使用Java语言去设计、开发计算机程序。 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为。面 向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算 机事件的设计思想。 它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步的去 操作实现。举例洗衣服:面向过程:

2020-07-26 22:04:45 95

原创 JavaSE基础——数组

第一章 数组定义和访问1.1 数组概念数组概念: 数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致。1.2 数组的定义方式一格式:数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];数组定义格式详解:数组存储的数据类型: 创建的数组容器可以存储什么数据类型。[] : 表示数组。数组名字:为定义的数组起个变量名,满足标识符规范,可以使用名字操作数组。new:关键字,创建数组使用的关键字。数组存储的数据类型: 创建的数组容器可以存储什么数据类型。[长

2020-07-23 22:17:57 100

原创 JavaSE基础——方法

方法1.1 方法的定义和调用前面的课程中,使用过嵌套循环输出矩形,控制台打印出矩形就可以了,因此将方法定义为 void ,没有返回值。 在主方法 main 中直接被调用。public class Method_Demo1 { public static void main(String[] args) { print(); } private static void print() { for (int i

2020-06-01 21:58:47 184

原创 IDEA常用快捷键

快捷键 功能Alt+Enter导入包,自动修正代码Ctrl+Y导入包,自动修正代码Ctrl+D复制光标所在行的内容,插入光标位置下面Ctrl+Alt+L格式化代码Ctrl+/单行注释Ctrl+Shift+/选中代码注释,多行注释,再按取消注释Alt+Ins自动生成代码,toString,get,set等方法Alt+Shift+上下箭头移动当前代码行...

2020-06-01 21:32:13 89

原创 JavaSE基础——流程控制语句

第一章 流程控制1.1 概述在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说,程序的流程对运行结果 有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现 我们要完成的功能。1.2 顺序结构public static void main(String[] args){ //顺序执行,根据编写的顺序,从上到下运行 System.out.println(1); System.out.print

2020-05-28 22:06:22 290

原创 JavaSE基础——数据类型转换和运算符

第一章 数据类型转换Java程序中要求参与的计算的数据,必须要保证数据类型的一致性,如果数据类型不一致将发生类型的转换。1.1 自动转换一个 int 类型变量和一个 byte 类型变量进行加法运算, 结果会是什么数据类型? int i = 1; byte b = 2; 运算结果,变量的类型将是 int 类型,这就是出现了数据类型的自动类型转换现象。自动转换:将取值范围小的类型 自动提升为 取值范围大的类型 。...

2020-05-27 17:23:53 270

原创 50道经典的java程序题

程序一题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?本题需要用到递归思想,而这题的核心是:a[n]=a[n-1]+a[n-1]代码如下:`package code.test;import java.util.*;class test01 {public static void main...

2020-03-13 16:20:56 2119 3

原创 用java实现一个简单的日历

通过编写程序,输入年份月份,实现判断年份是否为闰年,月份有多少天,然后打印日历。1.首先通过boolean判断是否为闰年public static boolean isRun(int year) { if((year%4==0&&year%100!=0)||(year%400==0)) { return true;...

2019-08-01 21:51:43 1772

原创 编写一个求n的阶乘的方法,用递归实现。

import java.util.Scanner;public class question28 { //用递归实现阶乘 public static long jieCheng(int num) { if(num==1) //求1的阶乘 { return 1; } else ...

2019-07-21 17:10:52 4445

原创 实现两个整数变量的交换

四种方法:package com.fsh.question;public class question09 { public static void main(String[] args) { int a=1,b=2; System.out.println("a="+a+" b="+b); //用第三方交换 int ...

2019-07-18 18:27:01 122

原创 输入n个数,用冒泡法进行排序

冒泡排序的原理就不在这里多说了。主要展示一下代码,也方便以后回顾。程序如下:package com.fsh.question;import java.util.Scanner;public class Bubblesort{ public static void main(String[] args) { Scanner read = new Scanner(...

2019-07-14 21:36:41 7416

原创 《C++ Primer第五版》读书笔记 第四章 表达式

4.1.1 基本概念表达式由一个或多个运算对象(operand)组成,对表达式求值将得到一个结果(result)。字面值和变量是最简单的表达式(expression),其结果就是字面值和变量的值。把一个运算符(operator)和一个或多个运算对象组合起来可以生成较复杂的表达式。组合运算符和运算对象: C++定义了一元运算符和二元运算符。作用于一个运算对象的运算符是一元运算符,如取地址符...

2018-08-30 18:35:40 125

原创 2.6 自定义数据结构

2.6.1 定义Sale_data类型本节介绍仅含数据成员的类的定义方法 定义类以关键字struct 开始,紧跟着类名和类体(类体可以为空)。 1.类体由一对花括号包围形成一个新的作用域。 2.类内部定义的名字必须唯一,但是可以与类外部定义的名字重复(使用时屏蔽掉外部的重名)。 3.类体右侧的表示结束的花括号后必须写一个分号,因为类体后可以紧跟变量名以示对该类型对象的定义。一般来说...

2018-08-27 18:18:45 208

原创 2.5 处理类型

2.5.1 处理类型类型别名是一个名字,它是某种类型的同义词,有两种方法可以定义类型别名。1.传统的方法是使用关键字typedef,关键字typedef 作为声明语句中的基本数据类型的一部分出现,该声明语句定义的不再是变量而是类型别名。该声明语句中的声明符也可包含类型修饰,从而也能由基本数据类型构造出复合类型来(可以不通过基本类型而直接定义指向该类型的指针)。 大部分情况下类型别名和类型...

2018-08-26 18:17:46 97

原创 2.4 const 限定符

在const创建的对象中需要注意的问题是const对象一旦被创建就无法更改,同时const对象定义是要初始化。 注意定义格式:例:const int i=10; 默认情况下,const限定的变量的作用域被设定为文件作用域。但是在某些时候,我们想多个文件共享const变量时,解决办法就是:对于const变量不管是声明还是定义都添加extern关键字。2.4.1 const的引用对常量...

2018-08-24 18:39:54 90

原创 2.3 复合类型

复合类型是指基于其他类型定义的类型。 一条声明语句由一个基本数据类型和紧随其后的一个声明符列表组成2.3.1 引用引用为对象起了另外一个名字,引用类型引用另外一种类型。 引用的定义 允许在一条语句中定义多个引用,其中每个引用的标识符都必须以符号&开头; ex:int i=1024,i2=2048; // i和i2都是int int &r=i, ...

2018-08-21 18:52:09 135

原创 2.2 变量

2.2.1变量定义1.变量定义的基本形式是:首先是类型说明符(type specifier),随后紧跟由一个或多个变量名组成的列表,其中变量名以逗号分隔,最后以分号结束。列表中每个变量名的类型都由类型说明符指定,定义时还可以为一个或多个变量赋初值。 2.何为对象? 通常情况下,对象是指一块能存储数据并具有某种类型的内存空间。 把对象的值区分开来,其中对象指能被程序修改的数据,而值指只读的...

2018-08-20 11:04:54 128

原创 《C++ Primer第五版》读书笔记 第二章 变量和基本类型

2.1基本内置类型C++定义了一套包括算术类型和空类型在内的基本数据类型2.1.1算术类型算术类型分为两类,整型(包括字符和布尔类型在内)和浮点型 表2.1:C++:算术类型 类型 含义 最小尺寸 bool 布尔类型 未定义 c...

2018-08-18 21:05:01 161

原创 入门篇3

1.5 类简介+1.6书店程序由于第五节是第六节的分支程序。所以在此我就直接写书店程序的代码及注释了。 #include < iostream > #include “Sales_item.h” int main() {Sales_item totalBook;//统计对象 if(std::cin>>totalBook){//第一次读取的值赋值...

2018-08-16 18:27:06 338 1

原创 1.4.4 if语句

用if语句写一个程序,来统计在输入中每个值连续出现了多少次;#include< iostream> using namespace std; int main() { //currval是我们正在统计的数;我们将读入的新值存入val int currval = 0,val = 0; //读取第一个数,并确保确实有数据可以处理 if(cin&g...

2018-08-14 18:00:50 136

原创 1.4.3 读取数量不定的输入数据

#include < iostream > using namespace std; int main() { int sum = 0, value; //读取数据直到遇到文件尾,计算所有读入的值的和 while (cin >> value) sum += value; // 等价于sum=sum+value ...

2018-08-14 17:27:34 172

转载 for循环与while循环的优缺点

for循环 循环控制变量的初始化和修改都放在语句头部分,书写形式较简洁,且适用于循环次数已知的情况。在循环语句中定义一个局部变量,循环结束后,局部变量就被释放了。while循环 循环控制变量的初始化一般放在while语句之前,循环控制变量的修改一般放在循环体中,形式上不如for语句简洁,但它比较适用于循环次数不易预知的情况(用某一条件控制循环)。两种形式各有优点,但它们是等价的,...

2018-08-14 16:41:41 7225

原创 1.4.2 for语句练习题

编写程序,使用while循环将50到100的整数相加。#include< iostream > using namespace std; int main() { int sum=0; for(int val=50;val<=100;val++) sum+=val; cout<< ” Sum of 0 to 100 i...

2018-08-14 16:32:57 252

原创 1.4.1练习题

编写程序,使用while循环将50到100的整数相加。#include using namespace std; int main() { int sum=0, val=50;while(val<=100){ sum+=val; ++val;}cout<<" Sum of 0 to 100 inclusive is &a

2018-08-13 18:14:54 162

原创 入门篇2

1.4 控制流1.4.1 while语句求一到十这十个数之和: #include using namespace std; int main() { int sum=0, val=1; //只要val的值小于等于10,while循环就会持续进行 while(val<=10) { sum +=val; //sum+val的值等于新的sum ...

2018-08-12 17:38:23 126

原创 入门篇1

1.3 注释简介(两数相加)#include<iostream>/* *简单主函数; *读取两个数,求它们的和 */int main(){ //提示用户输入两个数 cout<<"Enter two numbers:"<<endl; int v1=0,v

2018-08-12 17:18:40 96

空空如也

空空如也

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

TA关注的人

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