拿来主义
嗨123v
这个作者很懒,什么都没留下…
展开
-
什么时候使用接口?什么时候使用抽象?选择Java接口还是抽象类 (转)
转载来的在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统设计的主要工作内容。面向接口编程我想就是指按照这种思想来编程吧!实际上,在日常工作中,你已经按照接口编程转载 2013-12-21 08:40:40 · 601 阅读 · 0 评论 -
Java的位移运算巧方法
左移操作: x x可以是byte, short, char, int, long基本类型, n(位移量)只能是int型编译器的执行步骤:1) 如果x是byte, short, char类型, 则将x提升为int;2) 如果x是byte, short, char, int类型, 则n被重新赋值(过程是:取n的补码的低5位再转成十进制的int值,相当对n取32模: n=转载 2014-01-18 16:36:50 · 560 阅读 · 0 评论 -
Java内存原型分析:基本知识
java虚拟机内存原型寄存器:我们在程序中无法控制栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中堆:存放用new产生的数据静态域:存放在对象中用static定义的静态成员常量池:存放常量非RAM存储:硬盘等永久存储空间Java内存分配中的栈栈的基本单位是帧(或栈帧): 每当一个java线程运行的时候, ja转载 2014-01-20 11:09:40 · 462 阅读 · 0 评论 -
注意Java代码的内存泄漏
对于有语言编译基础的同志,要注意了,如果你是刚学java的.那么下面你必须要看.当然本人也是一样,也会出现下面某些错误。所以本人总结了一些。当然都是个人看法.不代表就是对的.也许有些是错的.同时也希望熟悉JAVA的高高手指出.或者有更好的看法或建议.都可以和我沟通.大家一齐来学习。同时这也是对自己的一种提高。在项目应用中.往往都是面临复杂的业务.而且用户量增加.内存使用自然转载 2014-01-20 11:08:38 · 482 阅读 · 0 评论 -
Java实现的几个常用排序算法详细解读
排序算法很多地方都会用到,近期又重新看了一遍算法,并自己简单地实现了一遍,特此记录下来,为以后复习留点材料。废话不多说,下面逐一看看经典的排序算法:1. 选择排序选择排序的基本思想是遍历数组的过程中,以 i 代表当前需要排序的序号,则需要在剩余的 [i…n-1] 中找出其中的最小值,然后将找到的最小值与 i 指向的值进行交换。因为每一趟确定元素的过程中都会有一个选择转载 2014-01-20 11:07:17 · 654 阅读 · 0 评论 -
多态中 静态绑定和动态绑定
动态绑定(又名后期绑定)动态绑定是指编译器在编译阶段不知道要调用哪个方法,直到运行时才能确定。让我们用个例子来解释。譬如我们有一个叫作’SuperClass’的父类,还有一个继承它的子类’SubClass’。现在SuperClass引用也可以赋给SubClass类型的对象。如果SuperClass中有个someMethod()的方法,而子类也重写了这个方法,那么当调用SuperClass引转载 2014-01-20 22:40:34 · 582 阅读 · 0 评论 -
深入理解java多态性!!(超赞!!作者写的很好)
昨天看到一个关于多态性的帖子,参考了回帖者的理解,加入了一些自己的看法,整理出来供大家参考,不一定完全正确,欢迎大家批评指正。(一)相关类class A ...{ public String show(D obj)...{ return ("A and D"); } public Str转载 2014-01-20 22:28:01 · 443 阅读 · 0 评论 -
编译时和运行时
在开发和设计的时候,我们需要考虑编译时,运行时以及构建时这三个概念。理解这几个概念可以更好地帮助你去了解一些基本的原理。下面是初学者晋级中级水平需要知道的一些问题。Q.下面的代码片段中,行A和行B所标识的代码有什么区别呢?12345678910111213转载 2014-01-20 23:04:55 · 676 阅读 · 0 评论 -
Java常量池详解之抓狂的面试题
今天My partner问我一个让他头疼的Java question,求输出结果:/** * * @author DreamSea 2011-11-19 */ public class IntegerTest { public static void main(String[] args) { objPoolTest(); } publ转载 2014-02-06 20:59:01 · 576 阅读 · 1 评论 -
阿里校招之类实例化的顺序
类A的定义01package com.sequence.test;02 03public class A {04 05// 静态变量转载 2014-03-12 15:19:38 · 458 阅读 · 0 评论 -
I/O流操作
本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188 在软件开发中,数据流和数据库操作占据了一个很重要的位置,所以,熟悉操作数据流和数据库,对于每一个开发者来说都是很重要的,今天就来总结一下I/O,数据库操作一:从数据流开始首先先有一个结构图看一下整个数据流中的API结构和对象继承关系信息:转载 2014-03-29 16:07:28 · 523 阅读 · 0 评论 -
JAVA基本数据类型转换
转自:http://my.oschina.net/lovedreamland/blog/13000boolean类型不可以转换成其他的数据类型;● 整形、字符型、浮点型的数据在混合运算中相互转换,转换时遵循如下规则: ■ 容量小的类型自动转换成容量大的数据类型;数据类型按容量大小排序如下: byte,short,charàintàlongàfloatàdoub转载 2014-04-02 13:45:25 · 433 阅读 · 0 评论 -
Java基本数据类型转换
转自:http://my.oschina.net/brucelee80/blog/162995变量赋给变量boolean类型不可赋给其他基本数据类型对于数值类型(包括字符型char),有以下规则:低取值范围赋给高取值范围则隐式转换(自动转换,因为能“装下”)高取值范围赋给低取值范围则显示转换(强制转换/手动转换,因为可能“装不下”) 如果要强转的数超过低取值范转载 2014-04-02 13:46:43 · 1023 阅读 · 0 评论 -
关于泛型
1:Java的泛型是类型擦除的。2:不能初始化泛型参数和数组3:不同场景使用不同的泛型通配符4:建议使用顺序:List,List,List4:只有上限由多重限定&,下限没有5:不能在静态域或方法中引用类型变量1:Java的泛型是类型擦除的。 java的泛型在编译期有效,但是在运行期所有的类型参数都会被删除。1cl转载 2014-03-23 18:29:17 · 493 阅读 · 0 评论 -
通配符及泛型的若干问题
转自:http://javaalong.blog.51cto.com/7891208/1297247废话不多说,直接进入正题。2个概念 上限通配符 及下限通配符下面我们看一个程序:上限通配符()下限通配符 ()说实话,这些概念确实让人很头痛,如果不是那种要去应对考试的,我觉得根本没必要记,知道怎么用就好了,那么接下来 我就帮大家分析下上面转载 2014-03-23 18:32:54 · 422 阅读 · 0 评论 -
深入Java关键字null
一、null是代表不确定的对象Java中,null是一个关键字,用来标识一个不确定的对象。因此可以将null赋给引用类型变量,但不可以将null赋给基本类型变量。比如:int a = null;是错误的。Ojbect o = null是正确的。Java中,变量的适用都遵循一个原则,先定义,并且初始化后,才可以使用。我们不能int a后,不给a指定值,就去打印a的值。这条对对转载 2014-01-18 16:36:01 · 423 阅读 · 0 评论 -
深度解析Java内存的原型
本文主要通过分析Java内存分配的栈、堆以以及常量池详细的讲解了其的工作原理。一、Java虚拟机内存原型寄存器:我们在程序中无法控制栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中堆:存放用new产生的数据静态域:存放在对象中用static定义的静态成员常量池:存放常量非RAM存储:硬盘等永久存储空间。二、常量池(constant pool)转载 2014-01-18 16:24:16 · 430 阅读 · 0 评论 -
Java程序员面试中的多线程问题
很多核心Java面试题来源于多线程(Multi-Threading)和集合框架(Collections Framework),理解核心线程概念时,娴熟的实际经验是必需的。这篇文章收集了 Java 线程方面一些典型的问题,这些问题经常被高级工程师所问到。0.Java 中多线程同步是什么?在多线程程序下,同步能控制对共享资源的访问。如果没有同步,当一个 Java 线程在修改一个共享变量转载 2014-01-18 16:23:31 · 440 阅读 · 0 评论 -
推荐一本好书-----《Java解惑》
数值表达式篇1. 奇偶判断不要使用 i % 2 == 1 来判断是否是奇数,因为i为负奇数时不成立,请使用 i % 2 != 0 来判断是否是奇数,或使用高效式 (i & 1) != 0来判断。 2. 小数精确计算Java代码System.out.println(2.00 -1.10); //0.8999999999999999 上面转载 2014-01-18 15:35:18 · 611 阅读 · 0 评论 -
java中的char类型和Unicode编码
学过C++的都知道,在C++里面char是占一个字节的。Java的char型是非常独特的,占用两个字节,因为Java中char型采用了Unicode编码。要理解这个问题,我们必须要理解什么是Unicode。世界上存在着多种编码方式,同一个二进制数字可以被解释成不同的符号。因此,要想打开一个文本文件,就必须知道它的编码方式,否则用错误的编码方式解读,就会出现乱码。为什么电子邮转载 2014-01-18 15:43:41 · 3156 阅读 · 0 评论 -
关于a=1++
例如 int b=a++;此语句会先在内存空间中创建一个b的区域,然后把a的值放入到一个临时空间,然后a的值自加1,然后再把临时空间里的值放到b中去。这时候b的值还是原来a的值,而a已经是加1后的值了,所以通俗说法是先赋值后++;在这道题里,a=a++,同样分析一下是:a先把自己的值放到一个临时空间里,然后a再自加1,然后(这里就是问题所在了)临时空间里a原来的值又赋值给了a,所以a还是原来的转载 2014-01-18 16:10:12 · 946 阅读 · 0 评论 -
Java程序员应该了解的10个面向对象设计原则
面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton、Decorator、Observer这样的设计模式,而不重视面向对象的分析和设计。甚至还有经验丰富的Java程序员没有听说过OOPS和SOLID设计原则,他们根本不知道设计原则的好处,也不知道如何依照这些原则来进行编程转载 2014-01-18 16:24:55 · 441 阅读 · 0 评论 -
变态级JAVA程序员面试32问(附答案) - 仅供面试Java开发的朋友参考 :)
第一,谈谈final, finally, finalize的区别。 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)。 第转载 2014-01-18 16:28:34 · 528 阅读 · 0 评论 -
浅谈Java中static作用
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之前转载 2014-01-18 16:34:57 · 382 阅读 · 0 评论 -
浅谈java中的四个核心概念
Java已经成为一个庞大而复杂的技术平台,对于开发人员而言,要想更好的掌握Java技术,深入理解底层的技术处理细节必不可少。现在介绍下java的四个核心概念:1.Java虚拟机Java虚拟机的主要任务是装在class文件并且执行其中的字节码。Java虚拟机包含一个类装载器,它可以从程序和 API中装载class文件。Java API中只有程序执行时需要的那些类才会被装载。字节码由执转载 2014-01-18 16:38:23 · 449 阅读 · 0 评论 -
Java数组及引用类型内存分配
转载的,文章原地址:http://www.2cto.com/kf/201210/163457.html我们已经了解了数组,它是一种引用类型,本篇将详细介绍数组的内存分配等知识点。数组用来存储同一种数据类型的数据,一旦初始化完成,即所占的空间就已固定下来,即使某个元素被清空,但其所在空间仍然保留,因此数组长度将不能被改变。当仅定义一个数组变量(int[] numbers)时,该变量还转载 2014-01-18 15:39:33 · 746 阅读 · 0 评论 -
Java数组及其内存分配
转载来的,文章原地址http://www.linuxidc.com/Linux/2013-03/81800.htm几乎所有的程序设计语言都支持数组。Java也不例外。当我们需要多个类型相同的变量的时候,就考虑定义一个数组。在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静态的,所以想要使用就必须先初始化(为数组对象的元素分配空间)。转载 2014-01-18 15:41:02 · 505 阅读 · 0 评论 -
《java解惑》:数值表达式
数值表达式 1. 奇偶判断 不要使用 i % 2 == 1 来判断是否是奇数,因为i为负奇数时不成立,请使用 i % 2 != 0 来判断是否是奇数,或使用高效式 (i & 1) != 0来判断。 2. 小数精确计算Java代码 System.out.println(2.00 -1.10);//0.8999999999999999转载 2014-01-18 15:42:35 · 992 阅读 · 0 评论 -
关于三元运算符中的类型提升
看了一篇好的关于三元运算符的讲解,就拿过来了,是关于三元运算符中的类型提升[html] view plaincopypublic static void main(String[] args) { int i=99; System.out.println("99999判断结果:"+(true?'a':999转载 2014-01-18 15:44:29 · 913 阅读 · 0 评论 -
java笔试题(引自传智播客)-上
1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。2、Java有没有goto?java中的保留字,现在没有在java中使用。 3、说说&和&&的区别。&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为tr转载 2014-01-18 15:56:08 · 530 阅读 · 0 评论 -
java笔试题(引自传智播客)-下
1、请说出作用域public,private,protected,以及不写时的区别这四个作用域的可见范围如下表所示。说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly。 作用域 当前类 同一package 子孙类 其他packagepublic √ √ √ √protected转载 2014-01-18 15:57:40 · 1178 阅读 · 0 评论 -
java笔试题(引自传智播客)-算法与编程
1.判断身份证:要么是15位,要么是18位,最后一位可以为字母,并写程序提出其中的年月日。答:我们可以用正则表达式来定义复杂的字符串格式,(\d{17}[0-9a-zA-Z]|\d{14}[0-9a-zA-Z])可以用来判断是否为合法的15位或18位身份证号码。因为15位和18位的身份证号码都是从7位到第12位为身份证为日期类型。这样我们可以设计出更精确的正则模式,使身份证号的日期转载 2014-01-18 15:59:10 · 606 阅读 · 0 评论 -
java泛型中的上界下界(上限下限)
转自:http://fyting.iteye.com/blog/122732java泛型中的super关键字不太常用,也不太好理解,今天又从头看了看java的泛型机制,作一记录。 上界: 上界用extends关键字声明,表示参数化的类型可能是所指定的类型,或者是此类型的子类。如下面的代码: Java代码 public void upperBou转载 2014-03-23 18:23:35 · 764 阅读 · 0 评论