java题目
报恩的猫
码农
展开
-
List remove中要注意的问题
import java.util.*; public class object { public static void main(String[] args) { String str1 = new String("abcde"); String str2 = new String("abcde"); String str3 = new String("abcde"转载 2014-11-05 22:27:24 · 610 阅读 · 0 评论 -
多态的条件与规则
三个条件:继承的存在(继承是多态的基础,没有继承就没有多态)。子类重写父类的方法(多态下调用子类重写后的方法)。父类引用变量指向子类对象(子类到父类的类型转换)。子类转换成父类时的规则:将一个父类的引用指向一个子类对象,称为向上转型(upcasting),自动进行类型转换。此时通过父类引用变量调用的方法是子类重写或继承父类的方法,不是父类的方法。此时通过父类引用变量无法转载 2014-11-09 16:16:20 · 626 阅读 · 0 评论 -
cookie 和 session 机制
cookie机制Cookie实际上是Web服务端与客户端(典型的是浏览器)交互时彼此传递的一部分内容,内容可以是任意的,但要在允许的长度范围之内。客户端会将它保存在本地机器上(如IE便会保存在本地的一个txt文件中),由客户端程序对其进行管理,过期的Cookie会自动删除。每当客户端访问某个域下某个目录中的网页时,便会将保存在本地并且属于那个域下对应目录的有效Cookie信息附在网页请求的转载 2014-10-06 16:42:15 · 445 阅读 · 0 评论 -
JAVA笔试题
1、Equals方法和==的区别equals()方法是用来比较两个字符串值是否相等而==是用来比较对象引用是否相等(也就是是否为同一个对象)2、Throw 和Throws的区别throw语句用来明确地抛出一个“异常”。throws用来标明一个成员函数可能抛出的各种“异常” 3、在异常捕获时 try ,catch,finally 中可不可以没有catch语句块。可以,但try转载 2014-11-07 17:22:06 · 370 阅读 · 0 评论 -
java 静态绑定 动态绑定
一.定义: 1.方法绑定:一个方法被调用时该方法关联其方法体的过程。 2.静态绑定:在面向过程的中又称为前期绑定在程序编译时进行了绑定,即在还没运行时,就已经加载到内存。 3.动态绑定:在面向过程中称为后期绑定(运行时绑定)在运行时就进行绑定,根据实际情况有选择的进行绑定。 二.优越性: 动态绑定灵活性相对静态绑定来说要高,因为它在运行之前可以转载 2014-09-28 18:11:27 · 527 阅读 · 0 评论 -
java 接口和抽象类 区别
在Java语言中, abstract class和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进 行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是转载 2014-09-15 14:45:23 · 349 阅读 · 0 评论 -
java中堆和栈的区别
ava 中的堆和栈 Java把内存划分成两种:一种是栈内存,一种是堆内存。 在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。 堆内存用来存放由new创建的对象和数组。转载 2014-09-15 15:26:49 · 482 阅读 · 0 评论 -
HashMap Hashtable区别
我们先看2个类的定义[java] view plaincopypublic class Hashtable extends Dictionary implements Map, Cloneable, java.io.Serializable [java] view plainc转载 2014-05-24 12:23:09 · 506 阅读 · 0 评论 -
String,StringBuilder与StringBuffer的区别
相信大家看到过很多比较String和StringBuffer区别的文章,也明白这两者的区别,然而自从Java 5.0发布以后,我们的比较列表上将多出一个对象了,这就是StringBuilder类。String类是不可变类,任何对String的改变都会引发新的String对象的生成;而StringBuffer则是可变类,任何对它所指代的字符串的改变都不会产生新的对象,可变和不可变类这一对对象已经齐全转载 2014-05-24 11:53:50 · 392 阅读 · 0 评论 -
深入理解java异常处理机制
1. 引子 try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下面的代码,“猜猜”它执行后的结果会是什么?不要往后看答案、也不许执行代码看真正答案哦。如果你的答案是正确,那么这篇文章你就不用浪费时间看啦。转载 2014-09-16 12:17:53 · 388 阅读 · 0 评论 -
Java5新特征之foreach语句使用总结
Java5新特征之foreach语句使用总结 foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。 foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本。 foreach并不是一个关键字,习惯上将这转载 2014-09-16 16:10:26 · 459 阅读 · 0 评论 -
cookie session 问题总结
一、cookie机制和session机制的区别*************************************************************************************具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于才服务器端保持状态的方案在客户端也需要保存转载 2014-10-08 20:08:36 · 1155 阅读 · 0 评论 -
java反射(2)+Class.forName( )
在上一篇文章中说说java反射(1)我们已经了解了反射的基本概念以及它的原理,但是我们知道反射只能能用它来做些什么呢? 其实在我们很多已经很熟的框架中都有它的身影,例如Hibernate框架中的关联映射,Spring框架:IOC(控制反转).反射可以实现各种框架功能,接下来我们通过一个实例来写一个很小很小的框架,通过此例子来理解反射真正的价值所在.转载 2014-04-24 17:52:15 · 583 阅读 · 0 评论 -
多个catch (异常的捕获顺序)
Java代码import java.io.IOException; public class ExceptionTryCatchTest { public void doSomething() throws IOException{ System.out.println("do somthing"); }转载 2014-11-05 21:35:13 · 3410 阅读 · 0 评论 -
extends Thread 与 implements Runnable 的区别
1、通过实现Runnable接口创建线程(1).定义一个类实现Runnable接口,重写接口中的run()方法。在run()方法中加入具体的任务代码或处理逻辑。(2).创建Runnable接口实现类的对象。(3).创建一个Thread类的对象,需要封装前面Runnable接口实现类的对象。(接口可以实现多继承)(4).调用Thread对象的start()方法,启动线转载 2014-04-26 22:57:09 · 589 阅读 · 0 评论 -
wait() 区别 sleep()
wait和notify方法必须写在synchronized方法内,即在调用wait和notify方法前,需先获得对象锁;调用wait方法则释放锁;wait方法返回后,需获得对象锁才可继续执行下面语句;多个线程wait时,若另外的线程调用notify方法后,由JVM决定唤醒其中一个线程;多个线程wait时,若另外的线程调用notifyAll方法,则唤醒所有wait线程,但是只有其中一个线程可以获得对转载 2014-06-16 22:17:16 · 514 阅读 · 0 评论 -
Thread Runnable 区别
这么来看待这个问题。首先明确线程代码的边界。其实很简单,Runnable接口的run方法所界定的边界就可以看作是线程代码的边界。Runnable接口中run方法原型如下: public void run(); >> 而所有的具体线程都实现这个方法,所以这里就明确了一点,线程代码不能抛出任何checked异常。所有的线程中的chec转载 2014-05-14 14:37:32 · 550 阅读 · 0 评论 -
覆盖和隐藏
1.先来总结java中方法的覆盖和隐藏一个大的原则:静态方法不能被覆盖。实例方法被覆盖,静态方法被隐藏。被覆盖的方法只有覆盖它们的类才能访问它们,而访问被隐藏的方法是提供该方法的全局名。例子:01: class Super02: {03: static String greeting()04: {05: return "Goodnight";06: }0转载 2014-11-20 17:24:05 · 661 阅读 · 0 评论 -
重写和重载区别
重写方法的规则如下:1. 参数列表:必须与被重写方法的参数列表完全匹配。 2. 返回类型:必须与超类中被重写的方法中声明的返回类型或子类型完全相同 3. 访问级别:一定不能比被重写方法强,可以比被重写方法的弱。 4. 非检查异常:重写方法可以抛出任何非检查的异常,无论被重写方法是否声明了该异常。 5. 检查异常:重写方法一定不能抛出新的检查异常,或比被重写方法声明的检查转载 2014-11-20 17:06:30 · 568 阅读 · 0 评论 -
精选30道Java笔试题解答
都是一些非常非常基础的题,是我最近参加各大IT公司笔试后靠记忆记下来的,经过整理献给与我一样参加各大IT校园招聘的同学们,纯考Java基础功底,老手们就不用进来了,免得笑话我们这些未出校门的孩纸们,但是IT公司就喜欢考这些基础的东西,所以为了能进大公司就~~~当复习期末考吧。花了不少时间整理,在整理过程中也学到了很多东西,请大家认真对待每一题~~~下面都是我自己的答案非官方,仅供参考,如果转载 2014-11-19 21:57:54 · 1016 阅读 · 1 评论 -
Java笔试题集锦
Java笔试题集锦1.MVC的各个部分都有那些技术来实现?如何实现?答:MVC是Model-View-Controller的简写。"Model" 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现), "View"是应用的表示面(由JSP页面产生),"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不转载 2014-11-19 21:59:08 · 573 阅读 · 0 评论 -
java基础笔试题汇总
Java常见笔试题汇总 基础 1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。 2、Java有没有goto? java中的保留字,现在没有在java中使用。 3、说说&和&&的区别。 &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边转载 2014-11-19 22:01:23 · 616 阅读 · 0 评论 -
java反射(1)
反射反射,程序员的快乐. 第一次了解反射这个概念是从大话设计>>中所了解到的.当时只是对概念的模糊了解,具体对它的机制并不清楚.最近在学习并实践SSH框架,其中Spring框架中核心的内容是IOC(Inversion of Control)控制反转,如果我们对java的反射机制有了一定的了解会对我们学习Spring框架有很大的帮助.接下来我们开始说说Java转载 2014-04-24 17:51:21 · 386 阅读 · 0 评论 -
数组名和指针作为形参?
1.用数组名做函数参数f(int arr[],int n)①调用时采用:f(arr,10)由于数组名代表的是数组的地址,所以用数组名做参数的时候,其实是进行一个地址传递,会改变整个数组的值,所以①式也可以等价于:f(int *arr,int n)2.多维数组名作为函数的参数在用指针变量做形参以接受实参数组名传递的地址时,有两种方法:①采用和一维数组相同的转载 2014-09-15 15:43:04 · 3230 阅读 · 1 评论 -
Collection与Collections的区别
1、java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。 Collection ├List │├LinkedList │├ArrayList │└Vector │转载 2014-05-13 12:32:58 · 457 阅读 · 0 评论 -
string和int互相转化
1 如何将字串 String 转换成整数 int?A. 有两个方法:1). int i = Integer.parseInt([String]); 或i = Integer.parseInt([String],[int radix]);2). int i = Integer.valueOf(my_str).intValue();注: 字串转成 Double,转载 2014-05-19 10:18:22 · 534 阅读 · 0 评论 -
String池与iterator对集合的迭代
一、静态导入1. 导入类的静态属性import static java.lang.System.out;out.println("haha");2. 导入类的静态方法import static java.lang.Math.*; // 导入Math类的所有静态成员int num = abs(-10);二、基本数据类型的包装类1转载 2014-05-18 19:17:27 · 507 阅读 · 0 评论 -
ArrayList遍历的4种方法
public class ArrayListDemo { public static void main(String args[]){ List list = new ArrayList(); list.add("luojiahui"); list.add("luojiafeng"); //方法1 Iterator it1 = list.iterator();转载 2014-05-18 17:01:35 · 744 阅读 · 0 评论 -
OutputStream和InputStream的区别 + 实现java序列化
我们所说的流,都是针对内存说的,比如为什么打印到屏幕上就是System.out.println();而从屏幕等待用户输入的却是System.in呢?因为对于内存来说,把字符串打印到屏幕上是从内存流向屏幕这个显示器的,也就是输出,而从屏幕等待用户输入呢?就是等待键盘将字符输入到内存中。所以,你根本就不用死记硬背,当你遇到IO的时候,就想两件事,第一,我的内存是中心,第二看看流的方向(矢量)!转载 2014-04-26 11:30:11 · 663 阅读 · 0 评论 -
JAVA泛型类
泛型是JDK 5.0后出现新概念,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。泛型类引入的好处不仅在于减少代码量,还在于一提供了编译时期数据类型的检查功能,可以提前预知错误的发生,增加代码安全性,二是减少了强制类型转换。下面定义一个泛型类 Example GenericFX.jav转载 2014-04-26 10:35:43 · 441 阅读 · 0 评论 -
java输入输出流详解
1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法。 Java.io是大多数面向数据流的输入/输出类的主要软件包。转载 2014-05-06 13:47:46 · 560 阅读 · 0 评论 -
Java多态性详解 (父类引用子类对象)
面向对象编程有三个特征,即封装、继承和多态。 封装隐藏了类的内部实现机制,从而可以在不影响使用者的前提下改变类的内部结构,同时保护了数据。 继承是为了重用父类代码,同时为实现多态性作准备。那么什么是多态呢? 方法的重写、重载与动态连接构成多态性。Java之所以引入多态的概念,原因之一是它在类的继承问题上和C++不同,后者允许多继承,这确实给其带来的非常强大转载 2014-05-02 16:30:20 · 479 阅读 · 0 评论 -
可以声明接口,但不可以new接口
接口是一种特殊的抽象类,它包含常量和方法的声明,但没有方法的实现;可以把接口看成是一种特殊的抽象类;接口实质上是一种规范,它关心的是“做什么”,不关心“怎样做”;接口中的字段都是最终(final)、静态(static)、公共(public)的,即是公有的静态常量;接口中方法的访问权限是公有(public)的,即使省略也默认为public;接口也不能用new来进行实例化,但可以声明接转载 2014-05-02 13:08:47 · 4169 阅读 · 0 评论 -
Iterator && Iterable Collection && Map
ava的集合是一种特别有用的工具类,大体上分为:Set、List和Map三种体系。其中Set代表无序、不可重复的集合;List代表有序、重复的集合;而Map则代表具有映射关系的集合(键值对)。JDK 1.5以后,Java增加了Queue体系集合,代表一种队列集合实现。 集合就是一种用来存放多个对象引用的容器。在JDK 1.5之前,会丢失存入集合中对象的数据类型,把所有对象都当做Object转载 2014-05-13 12:30:18 · 481 阅读 · 0 评论 -
java回调机制
软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。 同步调用是一种阻塞式调用,调用 方要等待对方执行完毕才返回,它是一种单向调用; 回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口; 异步调用是一种类似消息或事件的机制,不过它的调用方向刚好相反,接口的服务在收到某种讯息或发生某种事件时,会主动通知客户方(即调用客户方转载 2014-05-02 14:08:11 · 466 阅读 · 0 评论 -
java里的String Pool
其实只要理解以下知识: String 是存放在java栈中,当创建一个String对象时(其他存放在栈中的基本类型变量类似),会去栈中查找是否有相同值的String,如果有则将变量地址赋给变量引用,没有则创建一个变量,同时将地址赋给引用。以上不适用于new 申明的变量;因为new 关键字创建的变量都是存储与堆中的。以下是转载文章:转载 2014-09-15 16:23:07 · 383 阅读 · 0 评论 -
JAVA运行时异常及常见的5中RuntimeExecption
最近在抽时间看面试题,很多面试题都提出了写出java常见的5个运行时异常。现在来总结一下,java运行时异常是可能在java虚拟机正常工作时抛出的异常。java提供了两种异常机制。一种是运行时异常(RuntimeExepction),一种是检查式异常(checked execption)。检查式异常:我们经常遇到的IO异常及sql异常就属于检查式异常。对于这种异常,java转载 2014-05-24 15:22:38 · 693 阅读 · 0 评论 -
堆和栈的区别
先了解具体的概念:JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)堆区:1.存储的全部是对象,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令)。2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身。栈区:1.每个线程包含一个栈区,栈中只保存基础数据类型的转载 2014-05-24 15:47:25 · 405 阅读 · 0 评论 -
java线程阻塞(sleep,suspend,resume,yield,wait,notify)
为了解决对共享存储区的访问冲突,Java 引入了同步机制,现在让我们来考察多个线程对共享资源的访问,显然同步机制已经不够了,因为在任意时刻所要求的资源不一定已经准备好了被访问,反过来,同一时刻准备好了的资源也可能不止一个。为了解决这种情况下的访问控制问题,Java 引入了对阻塞机制的支持。 阻塞指的是暂停一个线程的执行以等待某个条件发生(如某资源就绪),学过操作系统的同学对它一定已转载 2014-05-14 12:39:13 · 1369 阅读 · 0 评论 -
java中方法中声明三个点“...”作用
public class Test { public static void main(String[] args) { String str[] = {"s","f"}; // test();//可以为空// test("www");//一个字符串// test(str);//一个string数组 test("w","d","s");//多个字符串 }转载 2014-05-12 18:04:10 · 1027 阅读 · 0 评论