Java基础知识
文章平均质量分 83
gdzhiwenwu
人生的道路虽然漫长,但紧要处常常只有几处。
展开
-
Java并发面试常见编程题:两个线程轮流打印(可扩展为N个线程轮流打印)
需求:要求两个线程轮流打印输出方法一 synchronizedsynchronized可以把任意非NULL的对象当做锁。作用范围:synchronized作用于对象时,锁住的是所有以该对象为锁的代码块。作用于方法时,锁住的是对象的实例(this)作用于静态方法时,锁住的是class对象。class对象存储在方法区中,而方法区时共享的,因此锁静态方法相当于一个类的全局锁。Object对象的方法中:void notify() 唤醒在此对象监视器上等待的单个线程void wait() 导原创 2021-03-10 15:26:05 · 326 阅读 · 0 评论 -
Servlet在sendRedirect与getRequestDispatcher遇到提交响应后无法转发的问题
问题在运行Servlet程序遇到下面的问题protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.doGet(req, resp); String method = req.getParameter("method"); if(method.equals("add")){原创 2020-12-07 21:41:08 · 2308 阅读 · 4 评论 -
Java常见语法糖
语法糖定义语法糖(英语:Syntactic sugar)是由英国计算机科学家彼得·兰丁发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能没有影响,但是更方便程序员使用。语法糖让程序更加简洁,有更高的可读性。语法糖是啥?语法糖没有一个官方的定义(或者说定义相当宽泛),更像是一种观念:任何让你写着爽、但是实际发生的和你看到的不一样的东西都可以“被认为”是语法糖。例如最常见的Integer和int的自动装拆箱操作背后就是语法糖。看上去你在写。Java中很常见的Foreach就属于语法糖的一个原创 2020-10-28 15:27:36 · 564 阅读 · 0 评论 -
笔记——String,StringBuilder,StringBuffer
StringString创建过程字符串拼写的几种方式String重写equal()方法JavaString深入理解“+”号拼接利用+进行拼接的时候,会将+号的拼接方式变换成StringBuilder的append方式,也就是说每次利用+会建立一个StringBuilder。因此,在循环内部意味着每执行一次循环,就会创建一个StringBuilder对象。因此循环里面不要用+号,在循环外面建立一个StringBuilder或StirngBuffer。private static void t原创 2020-08-09 13:21:41 · 144 阅读 · 0 评论 -
你真的读懂Java的反射机制了吗?
Java反射是一种非常重要的机制,初学者刚看时可能觉得反射机制太过于晦涩难懂直接跳过去了,但对于要掌握Spring等框架的程序员来说,必须要深入理解Java反射机制。本文将系统的介绍Java反射机制并同时详细记录我在学反射过程中的疑问。1, 为什么会有反射?引用于该博文:为什么需要反射机制?假如你写了一段代码:Object o=new Object();运行上面这行创建Object对象的代码时,JVM发生了什么?首先JVM会启动,你的代码会编译成一个.class文件,然后被类加载器加载进jvm的原创 2020-08-03 10:46:00 · 182 阅读 · 0 评论 -
重写Object类的equal(),hashCode(),toString()方法
以下内容来自Java核心技术1第五章中Object类的介绍Object类是所有类的始祖,Java中的每一个类都是由它扩展而来。任何类都是Object类的子类,因此Object类型的变量可以引用任何类型的对象:Object obj = new Employee("zhi",3500)如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类就默认继承 Object类。因此,Object类是 Java 类层中的最高层类,是所有类的超类。换句话说,Java 中任何一个类都是它的子类。由于.原创 2020-07-20 14:27:52 · 333 阅读 · 0 评论