随笔分类 - java
摘要://死锁:多个线程相互抱着对方需要的资源,然后形成僵局 public class DeadLock { public static void main(String[] args) { Makeup makeup1 = new Makeup(0,"小老虎"); Makeup makeup2 = ne
阅读全文
摘要:$ git push origin 上面命令表示,将当前分支推送到origin主机的对应分支。 如果当前分支只有一个追踪分支,那么主机名都可以省略。 $ git push 如果当前分支与多个主机存在追踪关系,那么这个时候-u选项会指定一个默认主机,这样后面就可以不加任何参数使用git push。 $
阅读全文
摘要:1.下面这一例子会造成线程不安全 会取出负数,会同时一起抢 要是剩最后一张票的时候 会同时取出一,这样就造成线程不安全 //不安全买票 public class UnsafeBuyTicket { public static void main(String[] args) { BuyTicket
阅读全文
摘要:public class UnsafeBuyTicket { public static void main(String[] args) { BuyTicket station = new BuyTicket(); new Thread(station,"苦逼的我").start(); new T
阅读全文
摘要:public static void main(String[] args) throws InterruptedException { //sleep打印系统时间 while(true){ //打印当前时间 Date date = new Date(System.currentTimeMillis
阅读全文
摘要:GC(GarbageCollection)是垃圾回收机制(垃圾回收器),GC是JVM对内存(实际上就是对象)进行管理的方式。 Java是由C++发展来的。它摈弃了C++中一些繁琐容易出错的东西。其中有一条就是这个GC。 写C/C++程序,程序员定义了一个变量,就是在内存中开辟了一段相应的空间来存值。
阅读全文
摘要:官方文档 例子 public class TestLamda4 { public static void main(String[] args) { ILike like = new Like(); like.lambda(); //匿名内部类 没有类的名称,必须要借助接口或者父类 like = n
阅读全文
摘要:上界<? extends T>不能往里存,只能往外取 <? extends Fruit>会使往盘子里放东西的set( )方法失效 但取东西get( )方法还有效指的是,引用内的泛型范围,最高是T类,最低不限可以取元素不能添加元素 下界<? super T>不影响往里存,但往外取只能放在Object对
阅读全文
posted @ 2020-03-11 16:13
Rzk
摘要:里氏替换原则(Liskov Substitution Principle LSP)面向对象设计的基本原则之一。 里氏替换原则中说,任何基类可以出现的地方,子类一定可以出现。 LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础
阅读全文
摘要:ctrl + shift + alt + L 对其代码alt+insert 新建directory
阅读全文
摘要:public class ReflectTest01 { public static void main(String[] args) throws ClassNotFoundException { //第一种方式 Class c1 = Class.forName("Employee");//c1引
阅读全文
摘要:1.尽早释放无用对象的引用 A a = new A(); a = null;//对象a使用完毕后,主动将其设为null2.尽量不要主动调用某个对象的Finalize()方法 ,应该交给垃圾回收机制调用 覆盖finalize方法以确保资源释放 作为一个补充操作,以防用户忘记“关闭“资源,3.尽量减少C
阅读全文
摘要:public class TestThread6 { public static void main(String[] args) throws InterruptedException { MyClass mo = new MyClass(); Prooess p = new Prooess(mo
阅读全文
摘要:package com.ruizhukai.demo01; /* * * t1和t2 * * 异步变成模型: t1线程执行t1的 t2线程执行t2的 两个线程之间谁也不等谁 * 同步编程模型: t1线程和t2线程执行 当t1线程必须等t2线程执行结束之后,t1线程才能执行,这是同步编程模型 * *
阅读全文
摘要:package com.ruizhukai.demo01; public class TestThread2 { /* 第一步:继承java.lang.Thread 第二步:重写run方法 三个知识点: 如何定义线程? 如何创建线程? 如何启动线程 */ public static void mai
阅读全文
摘要:public class TestThread3{ //静态方法 public static void S(ServiceOut s){ s.out(); } public static void main(String []args){ S(new Host()); } } //接口 interf
阅读全文
摘要:/* * 关于静态内部类 * 1.静态内部类可以等同于看做静态变量 * 2.静态内部类可以直接访问外部类的静态数据,无法直接访问成员 * */ public class OuterClass { //静态变量 private static String s1 ="A"; //成员变量 private
阅读全文
摘要:线程有什么作用呢?多进程的作用不是为了提高执行效率,而是提高了CPU的使用率。线程和线程共享"堆内存和方法区内存",栈内存是独立的,一个线程一个栈可以给现实世界中的人类一种错觉,感觉多个线程在同时并发执行 引入多进程的话程序的执行效率会降低。 C P U在某个时间顶上可以切换时间事情去做, 让他做一
阅读全文

浙公网安备 33010602011771号