JavaSE
Fighting_mjtao
这个作者很懒,什么都没留下…
展开
-
Jdk的安装与环境配置
JDK 编写java程序的使用软件,开发工具包JRE java程序运行环境安装后会有两个java文件夹:一个是jdk(里面有一个包含所有公共类库的src.zip),另一个是jre所说的javaHome 其实是jdk原创 2016-08-01 13:58:04 · 203 阅读 · 0 评论 -
第二次测试错题
public class Test { public static void main(String argv[]) { Test t = new Test(); int i = 0; t.fermin(i); i = i++; System.out.println("i=" + i); } ...原创 2018-08-10 19:23:43 · 219 阅读 · 0 评论 -
内存的划分
1、寄存器2、方法区3、栈:存储的都是局部变量,而且变量所属的作用域一旦结束,该变量就会自动释放。4、堆:存储的是数组和对象(其实数组就是对象),凡是new出来的都是建立在堆中。 特点:(1)每一个实体都有首地址 (2)堆内存中的每一个变量都有默认初始化值,根据类型的不同而不同。 ...原创 2018-08-06 23:18:13 · 169 阅读 · 0 评论 -
一些关于String类中方法的测试
在上传的资源文件中https://download.csdn.net/download/fighting_mjtao/10580026原创 2018-08-02 17:49:57 · 435 阅读 · 0 评论 -
JavaSE第十二天异常
异常框架 Throwable | |-------------------------------| Error ...原创 2018-08-08 19:50:39 · 125 阅读 · 0 评论 -
JavaSE第十二天泛型
泛型: 好处:将运行时期的异常提前到编译时期 不用强转 使用:<> 里面必须放的是引用数据类型泛型类: //泛型类 public class Basket <T> { private T t; public Basket1() { }...原创 2018-08-08 19:51:47 · 100 阅读 · 0 评论 -
JavaSE第13天File/FileInputStream
# IO ####File* 构造方法 * File(String pathname) //根据一个路径得到file对象 * File(String parent, String child)//根据一个目录和一个子文件得到一个file对象 * File(File parent, Stringchid)//根据一个父File文件目录和child文件获取file对象* 主要方法 ...原创 2018-08-13 17:33:27 · 139 阅读 · 0 评论 -
四种访问权限修饰符
修饰符 类内部 同一个包下 不同包的子类 任何地方 public √ √ √ √ protected √ √ √ 默认 √ √ private √ 对于Class的权限修饰符只可以使用public和默认修饰符public类可以在任何...原创 2018-09-22 20:36:38 · 202 阅读 · 0 评论 -
什么是JavaBean
JavaBean是一种Java语言写成的可重用组件JavaBean就是符合如下标准的Java类:1、类是公共的2、有一个无参的公共的构造器3、有属性,且有对应的getter、setter方法...转载 2018-09-22 20:41:23 · 205 阅读 · 0 评论 -
方法的重写
定义:在子类中可以根据需要对从父类中继承来的方法进行改造,要求:1、重写方法必须与被重写的方法具有相同的方法名和参数列表,(不然就是方法的重载了) 2、重写方法的返回值类型不能大于被重写的方法的返回值类型 3、重写方法的访问权限不能小于被重写方法的访问权限 注意:子类不能重写父类中声明为private权限的方法...原创 2018-09-22 20:50:37 · 115 阅读 · 0 评论 -
this与super的区别
注意:this与super在构造器里面是不可以同时存在的这是引用的尚硅谷的ppt里面的内容,如有侵权联系我,立刻删除。翻译 2018-09-22 20:54:38 · 2357 阅读 · 0 评论 -
Notify与Wait的小Demo
在多线程中,为了避免出现假唤醒的情况,所有的判断都是用while来判断的import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;//准备资源class ShareData ...原创 2018-10-15 14:34:50 · 291 阅读 · 0 评论 -
指定线程按照顺序操作
package com.atguigu;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 多线程之间按顺序调用 实现A->B -> C * 三个线...原创 2018-10-15 15:48:53 · 179 阅读 · 0 评论 -
静态代码块、构造代码块、构造方法的执行顺序
静态代码块>构造代码块>构造方法继承:Father.class ->Son.class ->Father Instance ->Son Instancepackage com.atguigu;class Father{ static { System.out.println("Father 静态代码块"); } { System.ou...原创 2018-10-15 16:10:14 · 136 阅读 · 0 评论 -
同步方法与静态同步方法各自的锁对象是谁
一个对象里面如果有多个synchronized方法,某一个时刻内,只要一个线程去调用其中的一个synchronized方法了,其它的线程都只能等待,换句话说,某一个时刻内,只能有唯一一个线程去访问这些synchronized方法锁的是当前对象this,被锁定后,其它的线程都不能进入到当前对象的其它的synchronized方法加个普通方法后发现和同步锁无关换成两个对象后,不是同一把锁了,...原创 2018-10-15 17:01:32 · 6858 阅读 · 3 评论 -
反射-获取对象及其字段权限问题
在获取类的时候,没有什么问题在获取对象字段的时候,注意权限问题①clazz.getField("fieldName")只有public的字段才可以获取到,protected、默认、private都无法获取到,抛出java.lang.NoSuchFieldException异常②clazz.getDeclaredField("fieldName") 可以获取到任何字段,但是如果这样运行...原创 2019-05-20 07:42:33 · 665 阅读 · 0 评论 -
尚硅谷java学习笔记——NIO(New IO)
原文链接转载 2019-08-24 14:18:39 · 266 阅读 · 0 评论 -
Executors引发的思考
ExecutorService executorService = Executors.newFixedThreadPool(10);A thread pool should be created by ThreadPoolExecutors rather than Executors.These would be make note: Below are the problems cr...原创 2019-08-21 09:46:03 · 224 阅读 · 0 评论 -
为什么子类重写equals()方法后要重写hashCode()方法
因为在比较两个对象相等的时候,可以通过先hashCode()方法比较,如果hashCode()方法比较后,如果不相等,则可以判断这两个对象不相等,如果hashCode()方法比较后相等,则进入equals()方法进行比较,如果结果是相等,两个对象相等,否则不相等。也就是说:hashCode相等,两个对象不一定相等;两个对象equals后相等,则两个对象的hashCode一定相等。...原创 2018-08-01 18:50:35 · 952 阅读 · 0 评论 -
JavaSE第八天
1、String类型面试题 public static void main(String[] args) { //demo1(); //demo2(); //demo3(); //demo4(); String s1 = "ab"; String s2 = "abc"; ...原创 2018-08-01 18:45:00 · 126 阅读 · 0 评论 -
逻辑运算
1、比较运算符,运算完的结果必须是true或者false2、&:与; |:或 &:的特点:全真才为真。 |:的特点:有真就为真。3、^ :异或 运算特点:符号两边的结果相同是false;不同是true。当一个数异或运算两次,结果还是这个数的本身。4、!:非运算5、&&、||面试题:对于两个整数变量的值进行交换(不需要第三方变量)就是用异原创 2017-05-01 21:21:28 · 318 阅读 · 0 评论 -
内存的划分
1、寄存器。2、方法区。3、栈:存储的都是局部变量,而且变量所属的作用域一旦结束,该变量就会自动释放。4、堆:存储的是数组和对象(其实数据的本质就是对象),凡是new出来的都建立在堆中。 特点:(1)每一个实体都有首地址值。 (2)堆内存中的每一个变量都有默认初始化值,根据类型的不同而不同。 (3)垃圾回收机制。原创 2017-05-01 21:33:30 · 217 阅读 · 0 评论 -
函数的重载
1、同一个类2、同名3、参数个数不同或者参数类型不同、顺序不同4、函数重载和返回值的类型无关5、Java是严谨性语言,如果函数出现调用的不确定性,会编译失败。原创 2017-05-01 21:36:10 · 175 阅读 · 0 评论 -
JavaSE第一天
day-01_201807231、jdk环境配置 -JAVA_HOME :D:\ProgramFiles\Java\jdk1.8.0_131 -JRE_HOME :D:\ProgramFiles\Java\jdk1.8.0_131\jre path:%JAVA_HOME%\bin;%JRE_HOME%\bin javac 编译 java 运行2、J2SE项目目录结构src:.ja...原创 2018-07-23 21:34:08 · 284 阅读 · 0 评论 -
JavaSE第二天
day-02-201807241、建包规范:反公司域名机制.功能 eg:com.feicui.crm.post2、冒泡排序:轻的上浮,沉的下降 两个相邻位置比较,如果前面的元素比后面的元素大就换位置。 for (int i = 0; i < arr.length - 1; i++) { //外循环只需要比较arr.l...原创 2018-07-25 19:11:15 · 91 阅读 · 0 评论 -
JavaSE第三天
day-03 20180724面向对象1、思想特点:a:符合我们的思想习惯 b:将复杂的事情简单化 c:将我们从执行者变成了指挥者2、面向对象特征:封装(encapsulation) 继承(inheritance) 多态(polymorphism) ...原创 2018-07-25 19:14:23 · 117 阅读 · 0 评论 -
构造方法
构造方法格式特点 * a:方法名与类名相同(大小也要与类名一致) * b:没有返回值类型,连void都没有 * c:没有具体的返回值return;构造方法的重载及注意事项 * 构造方法的重载 * 重载:方法名相同,与返回值类型无关(构造方法没有返回值),只看参数列表 * 构造方法注意事项 * a:如果我们没有给出构造方法,系统将自动提供一个无...原创 2018-07-25 19:21:39 · 124 阅读 · 0 评论 -
Iterator背后的实现原理
public class CollectionTest2 { public static void main(String[] args) { Collection<Student> collection = new ArrayList<Student>(); Student student = new Student("aaaa...原创 2018-07-28 23:12:33 · 490 阅读 · 0 评论 -
泛型
1.好处:1.1提高安全性,将运行时期的错误提高到了编译时期 1.2省略了强转的步骤2.使用: 类或接口<> 对象名 = new 类<>(); 注意:前后泛型的类型要一致,在jdk7之后,后面的泛型类型可以省略 ...原创 2018-07-29 00:06:11 · 118 阅读 · 0 评论 -
HashSet保证元素唯一性原理
使用Set集合都是需要去掉重复元素来保证元素的唯一性如果在存储的时候逐个equals()比较, 效率较低,哈希算法提高了去重复的效率, 降低了使用equals()方法的次数 当HashSet调用add()方法存储对象的时候, 先调用对象的hashCode()方法得到一个哈希值, 然后在集合中查找是否有哈希值相同 的对象 如果没有哈希值相同的对象就直接存入集合 如果有哈希...原创 2018-07-29 10:17:20 · 319 阅读 · 0 评论 -
内部类的创建对象等问题
package cn.sdut;/* * 非静态内部类对象的创建需要依赖外部类 * new Outer().new Inner(); * 静态方法中没有this,也就是没有外部类对象,所以编译错误 * 普通方法里面有this,也就是 this.new Inner(); */public class Outer { public static void main(Strin...原创 2018-07-29 11:39:18 · 699 阅读 · 0 评论 -
JavaSE第四天
1、继承(extends) 优点:1、提高了代码的复用性 2、提高了代码的可维护性 3、让类与类之间产生关系,是多态的前提 缺点:类的耦合性增强了。2、Java中继承特点: 1、只支持单继承,不支持多继承 2、支持多层继承 注意事项: 1、子类只能继承父类的所有非私...原创 2018-07-26 19:52:49 · 104 阅读 · 0 评论 -
JavaSE第六天
1、接口: 特点: 关键字 interface 实现:class 类名 implements 接口名 {} 不能实例化,要按照多态的方式实例化 子类:可以是抽象类,也可以是具体类 1.1、成员特点: 成员变量:只能是常量 默认修饰符:public staitc final 构造方法:没有 ...原创 2018-07-30 21:51:05 · 151 阅读 · 0 评论 -
HashMap的key重复,那么value会被覆盖吗?
package cn.sdut.mydemo;import java.util.HashMap;public class HashMapDemo{ public static void main(String[] args) {// demo01(); demo02(); } private static void demo02() ...原创 2018-08-04 21:07:55 · 26938 阅读 · 10 评论 -
static 与 static final区别
javapublic static int a = 10;与public static final int b = 10;区别被final修饰的变量称为常量,存放在常量池中,能够值共享,但是不可改变的而static修饰的是静态变量,可以用类名直接调用,可以被该类的所有对象所共享,但是值是可以改变的...原创 2018-07-31 17:47:05 · 1120 阅读 · 0 评论 -
JavaSE第七天
day07设计模式1、单例模式 饿汉式:用空间换时间 /** * 饿汉式单例模式 * @author mjt * */ public class HungrySingleton { private...原创 2018-07-31 17:50:35 · 224 阅读 · 0 评论 -
JavaSE第五天
day04_多态1、概述:事务存在多种形态;多个类对象对于同一消息作出不同的响应2、多态前提: 1、要有继承关系 2、要有方法重写 3、要有父类引用指向子类对象3、多态中的成员访问特点成员变量:编译看左边(父类),运行看左边(父类)成员方法:编译看左边(父类),运行看右边(子类)静态方法:编译看左边(父类),运行看左边(父类)4、向上转型和向下转型 P...原创 2018-07-28 10:55:43 · 86 阅读 · 0 评论 -
原子性问题
package cn.sdut.concurrent.main;/** * @author MaJiatao * @description: 验证线程原子性 * @created: 2019/09/30 12:51 */public class AddCount implements Runnable{ static Integer count = 0; stati...原创 2019-09-30 14:41:04 · 275 阅读 · 0 评论