java一些问题的解答】的更多相关文章

1.在Java中Executor和Executors的区别? Executor是线程池的顶层接口,它的实现类如下图所示: Executors是一个类,提供了多个静态方法,用于生成不同类型的线程池,如下图所示: 2.在Java中Lock接口比synchronized块的优势是什么?你需要实现一个高效的缓存,它允许多个用户读,但只允许一个用户写,以此来保持它的完整性,你会怎样去实现它? lock接口在多线程和并发编程中最大的优势是它们为读和写分别提供了锁,它能满足你写像ConcurrentHashM…
一.前言 继上一篇写完字节编码内容后,现在分析在Java中各字符编码的问题,并且由这个问题,也引出了一个更有意思的问题,笔者也还没有找到这个问题的答案.也希望各位园友指点指点. 二.Java字符编码 直接上代码进行分析似乎更有感觉. public class Test { public static String stringInfo(String str, String code) throws Exception { byte[] bytes = null; if (code.equals(…
1.这段代码大多数情况下运行正常,但是某些情况下会出问题.什么时候会出现什么问题?如何修正? public class MyStack { private List<String> list = new ArrayList<String>(); public synchronized void push(String value) { synchronized (this) { list.add(value); notify(); } } public synchronized S…
1.字符流和字节流的区别,使用场景是什么,相关类有哪些 http://blog.csdn.net/zj8692286/article/details/126507312.线程安全的概念,实现线程安全的几种方法 基本概念:如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码.如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的. 实现方法: synchronized关键字:获得一个锁来防止其他线程在执行此操作的线程完成之前访问同…
1.说说JVM原理?内存泄露与溢出区别,何时产生内存泄露? JVM原理 :http://www.cnblogs.com/jiayi/archive/2010/06/08/1753863.html 内存泄露与溢出区别:http://blog.csdn.net/buutterfly/article/details/6617375 2.mysql上亿记录数据量的数据库如何设计? mysql单表存储控制在百万条最好,根据业务的增长量适时分表分库,使用数据库中间件进行数据集组合查询 3.mysql支持事务…
1.java 枚举类型和数据二进制等问题思考 以下代码的输出结果是什么?为什么会有这样的输出结果? int X=100; int Y=200; System.out.println("X+Y="+X+Y); System.out.println(X+Y+"=X+Y");  答:输出的结果为X+Y=100 200 300=X+Y:第一个+X+Y的意思就是在“X+Y=”字符串后面加上“X”."Y"两个变量,而第二个中X+Y则是变量X和Y进行相加运算…
Q1.内部类和子类之间有什么区别? Ans:Inner类是嵌套在另一个类中的类.内类具有嵌套它的类的访问权限,并且它可以访问外部类中定义的所有变量和方法. 子类是从另一个名为super class的类继承的类.子类可以访问其超类的所有公共和受保护的方法和字段. Q2.Java类的各种访问说明符是什么? Ans:在Java中,访问说明符是在定义访问范围的类名之前使用的关键字.类的访问说明符类型是: public:类,方法,字段可从任何地方访问. protected:方法,字段可以从它们所属的同一个…
1.首先,第一个问题谈到一个java类文件中真的只能有一个公有类吗?并给出了以下代码.可以看出这个程序里有两个public类: 我进行了不同的调试:                                                                       可以看出 如果只在第一个public类里面定义实体,或者两个都不定义并没有报错且程序可以运行.确实,每个编译单元(文件)只能有一个public 类.这么做的意思是,每个编译单元只能有一个公开的接口,而这个接口就…
1.JVM什么情况下会GC,GC策略有哪些 当应用程序分配新的对象,GC的代的预算大小已经达到阈值,比如GC的第0代已满:代码主动显式调用System.GC.Collect():其他特殊情况,比如,系统报告内存不足.CLR卸载AppDomain.CLR关闭,甚至某些极端情况下系统参数设置改变也可能导致GC回收 http://www.cnblogs.com/jeffwongishandsome/p/talk-about-GC-and-how-to-use-GC-better.html http:/…
学习一门语言基础是非常重要的,因此本文总结了一些常见的Java基础问题的解答,希望可以帮到大家. 1. 九种基本数据类型的大小,以及他们的封装类. 9种基本数据类型 基本类型 包装类型 大小 boolean Boolean - byte Byte 8bit short Short 16bit int Integer 32bit long Long 64bit float Float 32bit double Double 64bit char Character 16bit void Void…