jar包 和 war包 jar包 全称 Java Archive File(Java 档案文件),通常 JAR 文件是一种压缩格式,和 ZIP 格式兼容,与 ZIP格式不同的是它 包含了一个名为 META-INF/MANIFEST.MF的清单文件,这个清单文件是由生成 JAR 包的时候系统自动创建的 与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。 war包 war包是JavaWeb工程发布用的包, 是Su...
学习笔记@Effective Java 第二章创建和注销对象Item 4不可实例的要有Private构造函数文章内容来源于Joshua Bloch - Effective Java (3rd) - 2018.chm一书 第二章 创建和注销对象 Item 4不可实例的要有Private构造函数 Enforce noninstantiability with a private constructor 有时你会希望编写一个类只包含一组静态方法和静态字段 这样的类业内骂声一片,就object而言,因为有些人无脑滥用,但是它们确实有有效的用途 它们可以对相...
Java 基础语法 基础阶段注释、标识符、关键字 注释平时我们编写代码,在代码量比较少的时候,我们还可以看懂自己写的,但是当项目结构一旦复杂起来,我们就需要用到注释了。注释并不会被执行,是给我们写代码的人看的书写注释是一个非常好的习惯平时写代码一定要注意规范Java中的注释有三种: a. 单行注释;代码中另起一行 输入 "//" 进行注释 b.多行注释;/* */ c.文档注释;/** */标识符关键字Java 所有的组成部分都需要名...
目录 1.Set集合 1.1set集合概述和特点 1.2哈希值 1.3HashSet集合概述和特点 1.4HashSet集合保证元素唯一性源码分析 1.5常见数据结构之哈希表 1.6LinkedHashSet集合概述和特点 1.7TreeSet集合概述和特点 1.8自然排序Comparable的使用 1.9比较器Comparator的使用 2.泛型 2.1泛型概述 2.2泛型类 2.3泛型方法 2.4泛型接口 2.5类型通配符 2.6可变参数 2.7可变参数的使用1.Set集合 1.1set集合概述和特点 set集合特点 不包含重复元素的集合...
第九章 集合 9.1 Java集合框架 9.1.1 将集合的接口与实现分离 与现代的数据结构类库的常见情况一样,Java集合类库也将接口(interface)与实现(implementation)分离。 首先,看一下人们熟悉的数据结构——队列(queue)是如何分离的。 队列接口指出可以在队列的尾部添加元素,在队列的头部删除元素,并且可以查找队列中元素的个数。当需要收集对象,并按照“先进先出”的规则检索对象时就应该使用队列。 队列接口的最简形式可能类...
学习笔记@Effective Java 第二章创建和注销对象Item 1考虑用静态工厂方法代替构造函数Item 2考虑一个生成器模式当面对很多构造参数时文章内容来源于Joshua Bloch - Effective Java (3rd) - 2018.chm一书 第二章 创建和注销对象 Item 1考虑用静态工厂方法代替构造函数 静态工厂方法不是设计模式中的工厂模式[ static factory method is not the same as the Factory Method pattern from Design Patterns] public static Boolean va...
目录 1.基本类型包装类 1.1基本类型包装类概述 1.2Integer类的概述和使用 1.3int 和string的相互转换 1.4练习案例字符串中数据排序 1.5自动装箱和拆箱 2.日期类 2.1date类概述和构造方法 2.2Date类常用方法 2.3SimpleDateFormat类概述 2.4SimpleDateFormat的构造方法 2.5SimpleDateFormat格式化和解析日期 2.6日期类案例 2.7Calendar类概述 2.8Calendar的常用方法 2.9案例:二月天 3.异常 3.1异常概述 3.2JVM的默认处理方案 3.3异常...
/***本文主要为搬运的B站狂神说老师的讲课的笔记,链接https://space.bilibili.com/95256449?spm_id_from=333.788.b_765f7570696e666f.1**/ 1、基本概念 1.1、前言 web开发:web,网页的意思 , www.baidu.com静态webhtml,css提供给所有人看的数据始终不会发生变化!动态web淘宝,几乎是所有的网站;提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!技术栈:Servlet/JSP,ASP,PHP在Java...
多线程(Thread) 1.自定义线程类继承Thread类 重写run()方法,编写线程执行体 创建线程对象,调用start()方法启动线程 //创建线程的方式之一:继承Thread类,重写run()方法,调用start开启线程 //总结:注意,线程开启不一定立即执行,由cpu调度执行 public class TestThread1 extends Thread{@Overridepublic void run() {//run方法线程体for (int i = 0; i < 200; i++) {System.out.println("我在看代码---"+i);}}public static...
从头开始学习JAVA的第四天 类型转换变量作用域 常量(Constant)变量的命名规范运算符算术运算符赋值运算符关系运算符逻辑运算符位运算符(操作二进制数)字符串连接符类型转换 由低到高 byte,short,char,int,long,float,double (从高到低)强制转换 格式:(类型)变量名 (从低到高)自动转换 注意点 1.不能对布尔值进行转换 2.不能把对象类型转换为不相干的类型 3.在把大容量转换为低容量时,强制转换可能会存在内存溢出或者精度...
1 两个线程同时访问一个对象的同步方法 synchronized 起作用 2 两个线程访问的是两个对象的同步方法 synchronized 不起作用 3 两个线程访问的是 synchronized 的静态方法 synchronized 起作用 4 同时访问同步方法和非同步方法 synchronized 不会影响其他方法,即非同步方法不受影响 /*** @Description 同步方法和非同步方法* @Author tzb* @Date 2021/1/8 15:52* @Version 1.0**/ public class SynchronizedYesAndNo6 implements R...
1.数组 1.1什么是数组【理解】数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。1.2数组定义格式【记忆】 1.2.1第一种 数据类型[] 数组名 示例: int[] arr; double[] arr; char[] arr;1.2.2第二种 数据类型 数组名[] 示例: int arr[]; double arr[]; char arr[];1.3数组动态初始化【应用】 1.3.1什么是动态初始化数组动态初始化就是只给定数组的长度,由系统给出默认初始化值1.3.2动态初始化格式 数据类型[] 数组...
初始化 初始化顺序为 静态对象——非静态对象——构造器 构造器 构造器实际上是一个静态方法 既然是方法那就可以重载 在传参数时,如果形参是long类型,实参可以是int类型。此处与计算时小范围向大范围转类似(都是为了避免数据遗失) 小知识点:构造器可以调用重载的构造器(使用this关键字)但是必须在起始位置并且只能调用一个别的构造器 class People{String name;int age;public People() {this("龟龟侠"); // this(18);//只...
记录学习使用,欢迎留言讨论(如果想要知道完整的知识请查看java编程思想第一章的内容) 居然因为版权审核不过~~~ 抽象过程 只针对待解决问题建模:首先可以理解为有两个模型一个是我们所遇见的问题所用是问题空间,一个是解决问题所用是解空间。他们是一一对应关系。 如要使用代码实现一个灯泡,在问题空间中应该有一个灯,它具有开灯、关灯、变亮、变暗的功能。 在对应的解空间中就有一个Light对象以及对应的方法。 Light lt = n...
记录学习使用,欢迎留言讨论(如果想要知道完整的知识请查看java编程思想第三章的内容) 如果有编程基础应该觉得操作符没什么难度(^ 0 ^) 我就写几个小知识点。 小知识点:使用random得到随机数(使用Math也可以得到随机数)Random random = new Random();// 限制范围0-10int i = random.nextInt(10);int j = random.nextInt();System.out.println("i="+i);System.out.println("j="+j);// 结果:i=4// j=-1577521398小知识点:...