java
文章平均质量分 51
zhm_icbchz
要相信这世上,有的人比你天才,还比你努力
展开
-
getClass()方法题目测试
importjava.util.Date;public class Test extends Date{ public static voidmain(String[] args) { new Test().test(); } public void test(){ System.out.println(super.getClass().getNa原创 2016-12-08 00:08:22 · 387 阅读 · 0 评论 -
java错题mark_4
链接:https://www.nowcoder.com/questionTerminal/9d852d481c2e41dbb2e88206c72d158e 来源:牛客网字节流继承于InputStream OutputStream,字符流继承于InputStreamReader OutputStreamWriter链接: https://www.nowcoder.com/questionTer原创 2017-07-07 19:21:20 · 280 阅读 · 0 评论 -
java错题mark_5
来源:牛客网public class NameList{ private List names = new ArrayList(); public synchronized void add(String name) { names.add(name); } public synchronized void printAll() {原创 2017-07-10 09:30:20 · 332 阅读 · 0 评论 -
java错题mark_6
链接:https://www.nowcoder.com/questionTerminal/ccaf97ecf8f64e73a8982a6e8c792d4e 来源:牛客网Consider the following code: 1 2 3 Integer s=new Integer(9); Integer t=new Integer(9); Long u=new Long(9);Whi原创 2017-07-10 09:43:05 · 515 阅读 · 0 评论 -
模拟基本的RPC框架代码
最近晚上没事,加上工作上要使用,所以开始自己学习RPC框架,目前写了一个基本的,便于理解,后续往里面添加内容。**服务提供方:**服务接口代码:package zhm.rpc.server;public interface IServer { public String testMethod(String arg);}接口实现类:/** * rpcServerImpl.java *原创 2017-10-12 22:46:55 · 715 阅读 · 0 评论 -
自己写分布式RPC框架
增加了xml文件配置,使用dom4j的方式读取配置文件,并支持多种序列化协议,使用IOC方式将加载序列化对象,可以配置默认的序列化方式,请看git代码:https://github.com/zhuheming222/MyRpc_Client 服务消费者; https://github.com/zhuheming222/MyRpc_Server 服务提供者。原创 2018-01-15 20:59:53 · 227 阅读 · 0 评论 -
JAVA动态代理的实现原理
在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而AOP的原理就是java的动态代理机制,所以本篇随笔就是对java的动态机制进行一个回顾。 在java的动态代理机制中,有两个重要的类或接口...原创 2018-04-18 23:32:54 · 176 阅读 · 0 评论 -
对于substring内存泄漏的分析
什么是内存泄漏?所谓内存泄漏,简单地说,就是由于疏忽或错误造成程序未能释放已经不再使用的内存的情况,它并不是说物理内存消失了,而是指由于不再使用的对象占据内存不被释放,而导致可用内存不断减小,最终有可能导致内存溢出。 由于垃圾回收器的出现,与传统的C/C++相比,Java 已经把内存泄漏的概率大大降低了, 所有不再使用的对象会由系统自动收集,但这并不意味着已经没有内存泄漏的可能。内存泄漏实际上...原创 2018-04-24 00:22:08 · 1076 阅读 · 0 评论 -
String源码学习
/*package java.lang;import java.io.ObjectStreamField;import java.io.UnsupportedEncodingException;import java.nio.charset.Charset;import java.util.ArrayList;import java.util.Arrays;import jav...原创 2018-05-09 00:19:47 · 339 阅读 · 0 评论 -
疑惑,测试SimpleDateFormat并发的代码执行结果很奇怪。。。
前几天工作中,遇到一个并发环境下有人写了SimpleDateFormat的场景,印象中这个是不能支持多线程的,应该使用ThreadLocal作为每个线程局部变量使用,今天有空,试了下SimpleDateFormat多线程使用,代码如下:/** * TestDateFormat.java * zhm.test.dateFormat * 2018年5月2日下午9:02:07 * */...原创 2018-05-02 21:55:11 · 320 阅读 · 1 评论 -
HashMap源码学习
package java.util;import java.io.*;/** * Hash table based implementation of the <tt>Map</tt> interface. This * implementation provides all of the optional ma原创 2018-05-15 00:29:11 · 137 阅读 · 0 评论 -
LinkedList源码学习
构成LinkedList的基本结构://采用静态内部类的方式定义,为什么??? private static class Node<E> { E item; Node<E> next; Node<E> prev; Node(Node&am原创 2018-05-21 23:08:46 · 116 阅读 · 0 评论 -
java错题mark_3
来源 牛客网 给出以下代码 public class TestObj{ public static void main(String[] args){ Object o=new Object(){ public boolean equals(Object obj){ return true;原创 2017-07-07 14:53:47 · 848 阅读 · 0 评论 -
java错题mark_2
如下代码的输出是 package Test; public class Test { private static void test(int[]arr) { for (int i =原创 2017-07-07 14:40:35 · 414 阅读 · 0 评论 -
java错误mark_1
牛客网下面有关servlet中init,service,destroy方法描述错误的是? init()方法是servlet生命的起点。一旦加载了某个servlet,服务器将立即调用它的init()方法 service()方法处理客户机发出的所有请求 destroy()方法标志servlet生命周期的结束 servlet在多线程下使用了同步机制,因此,在并发编程下servlet是线程安全的来源原创 2017-07-07 14:37:00 · 262 阅读 · 0 评论 -
linux中抓取java运行性能问题脚本
在linux系统中部署java应用,有时为了查询java应用的性能或者死锁之类的问题,需要使用jdk中的jstack工具来做,可以写如下脚本进行自动记录 java函数栈信息,分析性能问题。#!/bin/bash#weblogicPath=/app/weblogic/bea/user_projects/domains/OAdomain#jdk的安装目录javaPath=/jdk1.6.0_2原创 2017-02-19 14:03:55 · 1083 阅读 · 0 评论 -
weblogic被管服务启动linux脚本配置
首先,进入Domain_home目录,再使用一下这个脚本cd ./bin#根据需求配置参数#配置jvm 内存大小,方法区大小 ,再配置GC算法, 配置进程池大小,export USER_MEM_ARGS="-Xms2048m -Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -Dweblogic.原创 2017-02-19 14:12:35 · 2607 阅读 · 0 评论 -
(转)java.util.ConcurrentModificationException 解决办法
在使用iterator.hasNext()操作迭代器的时候,如果此时迭代的对象发生改变,比如插入了新数据,或者有数据被删除。则使用会报以下异常: java.util.ConcurrentModificationException at java.util.HashMapHashIterator.nextEntry(HashMap.java:793)atjava.util.Hash转载 2017-02-22 11:58:02 · 501 阅读 · 0 评论 -
(转)Java ConcurrentModificationException 异常分析与解决方案
一、单线程异常情况举例只要抛出出现异常,可以肯定的是代码一定有错误的地方。先来看看都有哪些情况会出现ConcurrentModificationException异常,下面以ArrayList remove 操作进行举例:使用的数据集合:List<string> myList = new ArrayList<string>();myList.add( "1");myList.add( "2")转载 2017-02-22 12:06:23 · 282 阅读 · 0 评论 -
hackerRank上的一道题,如何更快
Project Euler #179: Consecutive positive divisors 下面是代码import java.io.*;import java.util.*;import java.text.*;import java.math.*;import java.util.regex.*;public class Solution { public static原创 2017-06-29 12:17:06 · 1606 阅读 · 0 评论 -
编程练习二维数组 java
来源:牛客网 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。public class Solution { private static final int CANNOT_FIND_FLAG=-1; /* 思路,先找出二维数组每一行第一个数字,原创 2017-07-10 17:52:39 · 2149 阅读 · 0 评论 -
编程题 链表 java
输入一个链表,从尾到头打印链表每个节点的值/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val) {* this.val = val;* }* }**/import java.ut原创 2017-07-10 17:56:59 · 219 阅读 · 0 评论 -
java错题mark_8
一般情况下,以下哪个选项不是关系数据模型与对象模型之间匹配关系? 正确答案: D 你的答案: C (错误)表对应类 记录对应对象 表的字段对应类的属性 表之间的参考关系对应类之间的依赖关系目前ORMapping只是规定了数据结构和数据集的映射关系,还没到规定赖关系的阶段说明输出结果。123456789101112package test;import jav原创 2017-07-11 09:37:30 · 269 阅读 · 0 评论 -
java错题mark_7
在开发中使用泛型取代非泛型的数据类型(比如用ArrayList取代ArrayList),程序的运行时性能会变得更好。() 正确答案: B 你的答案: A (错误)正确 错误泛型仅仅是java的语法糖,它不会影响java虚拟机生成的汇编代码,在编译阶段,虚拟机就会把泛型的类型擦除,还原成没有泛型的代码,顶多编译速度稍微慢一些,执行速度是完全没有什么区别的.正确答案: D 你的答案: A原创 2017-07-10 10:04:39 · 858 阅读 · 0 评论 -
java错题mark_9
能单独和finally语句一起使用的块是( ) 正确答案: A 你的答案: B (错误)try catch throw throws解析:处理异常常用的两种方式: 1、try…catch(捕获处理机制); 2、throws(冒泡处理机制). 注意细节:使用try…catch块捕获时可以没有catch块,但当没用catch块的时候必须得有finally块.故选A)在java中重原创 2017-07-12 09:46:39 · 762 阅读 · 0 评论 -
青蛙跳和斐波那契数列(转)
(1)一只青蛙一次可以跳上 1 级台阶,也可以跳上2 级。求该青蛙跳上一个n 级的台阶总共有多少种跳法。 (2)一只青蛙一次可以跳上1级台阶,也可以跳上2 级……它也可以跳上n 级,此时该青蛙跳上一个n级的台阶总共有多少种跳法?分析: ( 1)当n = 1, 只有1中跳法;当n = 2时,有两种跳法;当n = 3 时,有3种跳法;当n = 4时,有5种跳法;当n = 5时,有8种跳法;…….转载 2017-07-14 09:19:07 · 286 阅读 · 0 评论 -
矩阵覆盖问题
问题描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。 请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形, 总共有多少种方法?解题思路 n=1 - 只有横放一个矩形一种解决办法 n=2 - 有横放一个矩形,竖放两个矩形两种解决办法 n=3 - n=2的基础上加1个横向,n=1的基础上加2个竖向 n=4 - n=3的基础上加1个横向,n=2的基础上加2个竖向转载 2017-07-14 12:51:16 · 847 阅读 · 0 评论 -
多线程很少用,遇到个问题,mark
牛客网题目假设如下代码中,若t1线程在t2线程启动之前已经完成启动。代码的输出是()public static void main(String[]args)throws Exception { final Object obj = new Object(); Thread t1 = new Thread() { public void run() {原创 2017-07-07 11:54:23 · 248 阅读 · 0 评论 -
java数组定义
来源:牛客网下面哪个语句是创建数组的正确语句?( )float f[][] = new float[6][6];float []f[] = new float[6][6];float f[][] = new float[][6];float [][]f = new float[6][6];float [][]f = new float[6][];牛客用户毛少枫: 在Myeclipse中敲原创 2017-07-07 12:02:13 · 1597 阅读 · 0 评论 -
ArrayList源码学习
ArrayList里面是一个数组实现,比较简单。/* * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free s...原创 2018-05-16 00:07:40 · 179 阅读 · 0 评论