JAVA基础
屌丝小四
这个作者很懒,什么都没留下…
展开
-
Object 内存布局
1.工具需要导入jar ,使用maven <!-- https://mvnrepository.com/artifact/org.openjdk.jol/jol-core --> <dependency> <groupId>org.openjdk.jol</groupId> &...原创 2020-03-31 14:46:10 · 305 阅读 · 0 评论 -
二分查找
1.首先找到中间位置int data[] = {1, 3, 5, 6, 7, 8, 9};//定义数组int low=0;//最小下标int high=data.length-1;//最大下标int mid=(low+high)/2;//中间位置2.判断要查找的值和中间下标的大小,并做比较,小的话high=mid-1 ;大的话low=mid+1 if(x==data[m...原创 2018-10-25 22:51:31 · 272 阅读 · 0 评论 -
Jdk8 lambda表达式
1.实例:对一个字母列表进行排序List<String> letters = Arrays.asList("c", "a", "d", "b");(1)不使用lambda表达式实现 静态工具方法Collections.sort接受一个list,和一个Comparator接口作为输入参数, Comparator的实现类可以对输入的list中的元素进行比较。通常情况下,...原创 2018-11-09 13:28:11 · 156 阅读 · 0 评论 -
Java现场写代码的面试题(来试试水啊,本人已跪)
1.需求外部入参(文件路径),参数类型为String,文件内容可能为空,也有很多行,每行中的字段使用冒号分割。2.要求现在需要取第行的第二个字段求和数据做统计,要求写一个方法实现需要返回统计的数字。因为是外部传入的文件,所以尽可能写出健壮的方法来实现。3.自己又写了一遍代码,有错的地方望指正,谢谢 import java.io.*;public class FileUti...原创 2018-11-06 21:46:25 · 4327 阅读 · 0 评论 -
Java多线程编程-(1)-线程安全和锁Synchronized概念
1进程与线程的概念(1)在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单位都是进程。在未配置 OS 的系统中,程序的执行方式是顺序执行,即必须在一个程序执行完后,才允许另一个程序执行;在多道程序环境下,则允许多个程序并发执行。程序的这两种执行方式间有着显著的不同。也正是程序并发执行时的这种特征,才导致了在操作系统中引入进程的概念。自从在 20 世纪 60 年代...原创 2018-11-11 13:05:04 · 184 阅读 · 0 评论 -
Thread线程独立,不共享数据
1.创建MyThread 继承Thread/** * 实例变量 ,每个线程都有自己的count */public class MyThread extends Thread{ private int count=5; public MyThread(String name){ super(); this.setName(name); ...原创 2018-11-14 15:49:31 · 757 阅读 · 0 评论 -
Thread共享数据,线程安全测试、不安全测试
1.创建类继承Thread public class MyThredUnsafe extends Thread{ private int count=5; /** * 线程不安全 */ @Override public void run(){ super.run(); count--; Sy...原创 2018-11-14 15:56:08 · 300 阅读 · 0 评论 -
秒杀系统模拟高并发
1.初始方案(1)表设计商品表设计:热销商品提供给用户秒杀,有初始库存。import java.io.Serializable;/** * t_seckillgoods * @author */public class TSeckillgoods implements Serializable { /** * id */ pri...原创 2018-11-24 11:20:12 · 597 阅读 · 0 评论 -
Spring 简单实例
1.Spring是 什么 ?开源框架;Spring 为简化 企业应用开发 而诞生 的 ;Spring 是一个IOC(DI)和AOP 的容器框架(1).轻量级 :非侵入性的,基于 Spring开发的应用中的对象可以不依赖于Spring API(2)依赖注入和控制反转(DI和IOC)(3)面向切面编程AOP(4)容器:包含bean,包含并管理 应用对象的生命周期2.搭建Spring框架...原创 2018-12-08 19:42:31 · 412 阅读 · 0 评论 -
spring IOC
1.简介:IOC(Inversion of Control)控制反转使一个对象通过被动的方式传递进来,而不是自己创建或者查找依赖对象;是容器主动将资源传递它所管理的对象,对象所需要做的是选择合适的方式来接受资源DI(Dependency Injection)依赖注入是IOC的一种表述方式 ,对象通过通过定义好的方式(setter和构造方法)来接收来自容器的资源注入2.Spring ...原创 2018-12-09 22:02:28 · 144 阅读 · 0 评论 -
Spring IOC之属性注入
1.项目创建https://blog.csdn.net/zhaolinxuan1/article/details/84897949https://blog.csdn.net/zhaolinxuan1/article/details/849328972.UserInfo类public class UserInfo { private String name; private I...原创 2018-12-09 22:12:16 · 158 阅读 · 0 评论 -
Spring IOC之构造注入
构造注入可以按:(1)按照索引下标匹配参数 (2)参数类型注入1.项目创建https://blog.csdn.net/zhaolinxuan1/article/details/84897949https://blog.csdn.net/zhaolinxuan1/article/details/849328972.DepartMent类注意:需要有构造方法public cl...原创 2018-12-09 22:25:29 · 162 阅读 · 0 评论 -
Spring IOC List Set Map 注入
1.项目创建https://blog.csdn.net/zhaolinxuan1/article/details/84897949https://blog.csdn.net/zhaolinxuan1/article/details/849328972.User类package com;import java.util.List;import java.util.Map;i...原创 2018-12-10 14:54:25 · 440 阅读 · 2 评论 -
List是有序且重复的,Set是无序不重复的!
List是有序且重复的,Set是无序不重复的。这里说的顺序有两个概念,一是按添加的顺序排列,二是按自然顺序a-z排列。Set并不是无序的,传统说的Set无序是指HashSet,它不能保证元素的添加顺序,更不能保证自然顺序,而Set的其他实现类是可以实现这两种顺序的。保证元素添加的顺序,不保证元素自然的顺序,可重复:List不保证元素添加的顺序,不保证元素自然的顺序,不可重复:HashSet...原创 2019-04-29 11:04:38 · 4203 阅读 · 0 评论 -
switch case 支持的 6 种数据类型
Java 中 switch case 语句用来判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。 语法格式如下: Integer key=3; switch (key){ case 1: System.out.println("1"); break; ...原创 2019-04-25 11:05:12 · 2106 阅读 · 0 评论 -
String 字符串不变性
1、字符串不变性查看源码发现: String是一个final类,且3个成员都是私有的,这就意味着String是不能被继承的, 这就防止出现:程序员通过继承重写String类的方法的手段来使得String类是“可变的”的情况 (1)final类 和 final的私有成员 (2)改变即创建对象的方法2、equals()方法、hashCode()放法的...原创 2019-04-25 11:15:20 · 856 阅读 · 0 评论 -
Tomcat启动报unable to start within 45 seconds错误解决办法
1.错误描述Server Tomcat v8.0 Server at localhost was unable to start within 45 seconds. If the server requires more time, try increasing the timeout in the server editor.2.解决办法(1)找到tomcat(2)双击...原创 2018-10-10 10:31:36 · 19791 阅读 · 1 评论 -
Map遍历
1.通过map.keySet() //第一种方式map.keySet()返回的是所以key的值 for (Integer key : map.keySet()) { String value = map.get(key);//得到每个key多对用value的 System.out.println(key + " " + value); }2.通过Iterat...原创 2018-10-15 14:54:18 · 200 阅读 · 0 评论 -
Integer比较
评论区写下你的答案 Integer i = 200; Integer j = 200; System.out.println(i == j); Integer q=125; Integer m=125; System.out.println(q == m);原创 2018-10-15 10:42:15 · 247 阅读 · 2 评论 -
Java.util集合类
java.util集合类整理:查找位置如下图:原创 2018-07-30 17:28:43 · 248 阅读 · 0 评论 -
STS打不开jar源码解决办法
解决办法:1.下载jd-eclipse-site-1.0.0-RC2.zip2.下载完成后打开STS,选择工具栏Help>Install New Software3.操作如下图:点击add 输入name;选择下载的zip;取消勾选框5. next...........6.Window->Preferences->General->Editors-...原创 2018-07-30 17:59:54 · 1842 阅读 · 0 评论 -
Object类中的方法
Object 类包含:getClass();equals();toString();hashCode();notifyAll();notify() 转载:清风飏 https://www.cnblogs.com/wxywxy/p/6740277.html转载 2018-07-30 11:46:31 · 178 阅读 · 0 评论 -
java中常用的进制
常用的进制:二进制;八进制;十进制;十六进制1.二进制转换成十进制(1)自带转换方法 /** * 二进制转十进制,自带方法 * * @param num * @return */ public static int twoToTenZd(String num) { int b = Integer.parseInt(num, 2); return...原创 2018-07-31 09:56:58 · 389 阅读 · 0 评论 -
JAVA中四种修饰符
JAVA中修饰符:(1)public(公共的)(2)protectd(被保护的)(3)default(缺失:)(4)private(私有的)1.在同一个package下的情况 public protectd default 被继承后可以获取,private不能获取到(只能在本类中获得)package com.packagetest;/** * 父类Person * ...原创 2018-08-02 10:44:53 · 809 阅读 · 0 评论 -
Java标识符
标识符:给接口(interface)、变量(variables)、类(class)和方法(method)命名。命名规则: (1)标识符必须以字母、下划线_ 、美元符$开头。 (2) 标识符其它部分可以是字母、下划线“_”、美元符“$”和数字的任意组合。 (3)Java 标识符大小写敏感,且长度无限制。 (4)不可以是Jav...原创 2018-08-02 11:08:28 · 1556 阅读 · 0 评论 -
Java中的关键字和保留字
Abstract Assert boolean break byte case Catch char(character) class const continue ...原创 2018-08-02 11:38:09 · 152 阅读 · 0 评论 -
Java常量声明及命名规范
常量:被final修饰的变量,初始化一次后,就不能再次被赋值!命名规范:大写字母和下划线(JING_DONG)package com.constanttest;public class ConstantTest { // final static int MAX_SPEED = 10; public static void main(String[] args) { //...原创 2018-08-02 11:51:09 · 14710 阅读 · 0 评论 -
i++ 和++i的区别
1.i++后者是先自增,后赋值; ++i先赋值,然后再自增;package com.constanttest;public class ConstantTest { public static void main(String[] args) { int i = 0; // i++是先赋值,再加1 int a = i++; System.out.println...原创 2018-08-02 13:33:02 · 123 阅读 · 0 评论 -
Java的三种控制结构
1.顺序结构 按照顺序一句一句执行顺序结构是最简单的算法结构public class SequenceTest { public static void main(String[] args) { // TODO Auto-generated method stub int num1 = 9; System.out.println(num1); int nu...原创 2018-08-07 09:08:37 · 6988 阅读 · 0 评论 -
String,StringBuffer,StringBuilder联系及区别
1.运行速度 StringBuilder > StringBuffer > String2.线程是否安全 String:线程安全的 StringBuilder:线程非安全的 StringBuffer:线程安全的3.是否可变 String是不可变类,而StringBuffer, StringBuilder是可变类 ...原创 2018-09-17 09:42:42 · 436 阅读 · 0 评论 -
java几种排序
1.冒泡排序/** * 冒泡排序 * * @param array * @return */ public static int[] mpSort(int array[]) { for (int i = 0; i < array.length; i++) { for (int j = i + 1; j < array.length; j++) {...原创 2018-09-17 10:01:44 · 117 阅读 · 0 评论 -
Java设计模式之《单例模式》
1 单例模式(1).介绍1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。(2)实例 public class Person { // 创建 Person 的一个对象 private static Person person = new Person(); // 让构造函数为 private,...原创 2018-09-17 10:32:02 · 123 阅读 · 0 评论 -
Java直连mysql数据库
1.添加jar2.代码import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import com.mysql.jdbc.Connection;public class JdbcTest { publi...原创 2018-10-11 17:46:25 · 1591 阅读 · 0 评论 -
Java数组的三种初始化方式
1.静态初始化 //静态初始化 int [] a={1,2,3}; System.out.println("a:"+a+">>>>>>;a[0]:"+a[0]+";a[1]:"+a[1]);2.动态初始化 //动态初始化 int [] b=new int[2]; b[0]=1; b[1]=2; System.out.println(&qu原创 2018-10-15 09:48:41 · 1304 阅读 · 0 评论 -
Java为什么可以跨平台
java类先编译成.class文件 通过JVM运行和操作系统无关 不同操作系统选择不同的JVM就OK 所以java可以跨平台运行,主要是不同操作系统可以选择不同的JVM。...原创 2018-07-25 15:38:10 · 574 阅读 · 0 评论