![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
沐沐牡
这个作者很懒,什么都没留下…
展开
-
java字符串常量池
Java中的字符串常量池Dec 21st, 2014 Java中字符串对象创建有两种形式,一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new String("droid");,这两种方式我们在代码编写时都经常使用,尤其是字面量的方式。然而这两种实现其实存在着一些性能和内存占用的差别。这转载 2017-05-22 22:52:33 · 178 阅读 · 0 评论 -
final关键字
关于final的重要知识点; 1、final关键字可以用于成员变量、本地变量、方法以及类。 2、 final成员变量必须在声明的时候初始化或者在构造器中初始化,否则就会报编译错误。 3、 你不能够对final变量再次赋值。 4、 本地变量必须在声明时赋值。 5、 在匿名类中所有变量都必须是final变量。 6、 f原创 2017-06-05 11:19:02 · 183 阅读 · 0 评论 -
内部类
1.为什么使用内部类?使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响1.1.使用内部类最大的优点就在于它能够非常好的解决多重继承的问题,使用内部类还能够为我们带来如下特性:(1)、内部类可以用多个实例,每个实例都有自己的状态信息,并且与其他外围对象的信息相互转载 2017-06-09 17:14:27 · 146 阅读 · 0 评论 -
编码格式
首先,Java中的一个char是2个字节。java采用unicode,2个字节来表示一个字符,这点与C语言中不同,c语言中采用ASCII,在大多数系统中,一个char通常占1个字节,但是在0~127整数之间的字符映射,unicode向下兼容ASCII。而Java采用unicode来表示字符,一个中文或英文字符的unicode编码都占2个字节,但如果采用其他编码方式,一个字符占用的字节数则各转载 2017-06-14 11:52:19 · 368 阅读 · 0 评论 -
try中return语句与finally语句执行顺序
在这里看到了try catch finally块中含有return语句时程序执行的几种情况,但其实总结的并不全,而且分析的比较含糊。但有一点是可以肯定的,finally块中的内容会先于try中的return语句执行,如果finall语句块中也有return语句的话,那么直接从finally中返回了,这也是不建议在finally中return的原因。下面来看这几种情况。情况一转载 2017-06-14 15:16:02 · 2671 阅读 · 0 评论 -
javaI的O
Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。数据流是一串连续不断的数据的集合,就象水管里的水流,在水管的一端一点一点地供水,而在水管的另一端看到的是一股连续不断的水流。数据写入程序可以是一段、一段地向数据流管道中写入数据,这些数据段会按先后顺序形成一个长的数据流。对数据读取转载 2017-08-16 17:00:23 · 249 阅读 · 0 评论 -
反射
写在前面:什么是java反射机制?我们又为什么要学它?当程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言。我们认为java并不是动态语言,但是它却有一个非常突出的动态相关机制,俗称:反射。IT行业里这么说,没有反射也就没有框架,现有的框架都是以反射为基础。在实际项目开发中,用的最多的是框架,填的最多的是类,反射这一概念就是将框架和类揉在一起的调和剂。所以,反射才是接转载 2017-07-25 20:10:00 · 177 阅读 · 0 评论 -
不可变类
不可变的对象指的是一旦创建之后,它的状态就不能改变。String类就是个不可变类,它的对象一旦创建之后,值就不能被改变了。阅读更多: 为什么String类是不可变的不可变对象对于缓存是非常好的选择,因为你不需要担心它的值会被更改。不可变类的另外一个好处是它自身是线程安全的,你不需要考虑多线程环境下的线程安全问题。阅读更多: Java线程教程以及Java多线程面试问题下面转载 2017-07-25 20:11:39 · 221 阅读 · 0 评论 -
java创建对象五种方法
作为Java开发者,我们每天都会创建大量的对象,但是,我们总是使用管理依赖系统(如Spring框架)来创建这些对象。其实还有其他方法可以创建对象,在接下来的文章中我会进行详细介绍。1.使用new关键字这是最常见的创建对象的方法,并且也非常简单。通过使用这种方法我们可以调用任何我们需要调用的构造函数。1Employee emp1转载 2017-08-17 16:26:06 · 307 阅读 · 0 评论 -
java常见
1 在Java中,没有goto语句。因为大量使用goto语句会降低程序的可读性和可维护性,所以Java语言取消了goto的使用。同时,为了避免程序员自行使用goto所带来的混乱,Java语言仍将goto定义为一个关键字,但是没有定义任何语法,故称为“保留字”。2 true、false和null在IDE中虽然以不同的颜色显示,但是并不是关键字,而是“字面常量”,就和String类型的ab转载 2017-08-17 17:36:36 · 221 阅读 · 0 评论 -
String,StringBuffer,StringBuilder比较
String, StringBuffer,StringBuilder的区别 java中String、StringBuffer、StringBuilder是编程中经常使用的字符串类,他们之间的区别也是经常在面试中会问到的问题。现在总结一下,看看他们的不同与相同。1.可变与不可变 String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道stri转载 2017-05-29 15:22:24 · 301 阅读 · 0 评论 -
抽象类与接口
含有abstract修饰符的class即为抽象类,abstract类不能创建的实例对象。含有abstract方法的类必须定义为abstract class,abstract class类中的方法不必是抽象的。abstract class类中定义抽象方法必须在具体(Concrete)子类中实现,所以,不能有抽象构造方法或抽象静态方法。如果的子类没有实现抽象父类中的所有抽象方法,那么子类也必须原创 2017-05-24 17:57:10 · 170 阅读 · 0 评论 -
super注意事项
super是java提供的一个关键字,super用于限定该对象调用它从父类继承得到的Field或方法。1. super关键字不能出现在static修饰的方法中,因为static修饰的方法是属于类的。2. 如果在构造器中使用super,则super用于限定该构造器初始化的是该对象从父类继承得到的field,而不是该类自己定义的field。3. super关键字只能指代直接父类,不原创 2017-05-24 18:10:19 · 391 阅读 · 0 评论 -
hashMap与HashTable区别
HashTable和HashMap区别①继承不同。public class Hashtable extends Dictionary implements Map public class HashMap extends AbstractMap implements Map②Hashtable 中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。在多线原创 2017-05-22 22:56:52 · 144 阅读 · 0 评论 -
java关键字
goto和const是保留字也是关键字。1,Java 关键字列表 (依字母排序 共50组): abstract, assert, boolean, break, byte, case, catch, char, class, const(保留关键字), continue, default, do, double, else, enum, extends, final, finall原创 2017-05-23 11:11:52 · 181 阅读 · 0 评论 -
java重写与重载
方法的重载是指: 1、在同一个类中 2、方法名相同 3、方法的形参列表不同 具体的不同表现为: 类型、个数、顺序的不同才可以构成重载4、#比较容易忽略的一点# 与方法的返回值类型与访问权限无关重写: 两同,两小,一大 两同:方法名,方法参数列表相同。 两小:抛出的异常类型要小于等于原创 2017-05-23 11:17:59 · 210 阅读 · 0 评论 -
socket编程
Socket,又称为套接字,Socket是计算机网络通信的基本的技术之一。如今大多数基于网络的软件,如浏览器,即时通讯工具甚至是P2P下载都是基于Socket实现的。本文会介绍一下基于TCP/IP的Socket编程,并且如何写一个客户端/服务器程序。餐前甜点Unix的输入输出(IO)系统遵循Open-Read-Write-Close这样的操作范本。当一个用户进程进行IO操作之前,它转载 2017-05-23 17:14:39 · 523 阅读 · 0 评论 -
java克隆
克隆,想必大家都有耳闻,世界上第一只克隆羊多莉就是利用细胞核移植技术将哺乳动物的成年体细胞培育出新个体,甚为神奇。其实在Java中也存在克隆的概念,即实现对象的复制。本文将尝试介绍一些关于Java中的克隆和一些深入的问题,希望可以帮助大家更好地了解克隆。Java中的赋值在Java中,赋值是很常用的,一个简单的赋值如下1234567转载 2017-05-23 17:33:45 · 221 阅读 · 0 评论 -
java注解详解
在Java中,注解(Annotation)引入始于Java5,用来描述Java代码的元信息,通常情况下注解不会直接影响代码的执行,尽管有些注解可以用来做到影响代码执行。注解可以做什么Java中的注解通常扮演以下角色编译器指令构建时指令运行时指令其中Java内置了三种编译器指令,本文后面部分会重点介绍Java注解可以应用在构建时,即当你构建你的项目时。构建过程包括转载 2017-05-23 20:01:01 · 230 阅读 · 0 评论 -
java中自动装箱与拆箱
自动装箱和拆箱从Java 1.5开始引入,目的是将原始类型值转自动地转换成对应的对象。自动装箱与拆箱的机制可以让我们在Java的变量赋值或者是方法调用等情况下使用原始类型或者对象类型更加简单直接。如果你在Java1.5下进行过编程的话,你一定不会陌生这一点,你不能直接地向集合(Collections)中放入原始类型值,因为集合只接收对象。通常这种情况下你的做法是,将这些原始类型的值转换转载 2017-05-24 17:03:02 · 274 阅读 · 0 评论 -
java.io.Serializable浅析
Java API中java.io.Serializable接口源码:1 public interface Serializable {2 } 类通过实现java.io.Serializable接口可以启用其序列化功能。未实现次接口的类无法使其任何状态序列化或反序列化。可序列化类的所有子类型本身都是可序列化的。序列化接口没有方法或字段,仅用于标识可序列化的语义转载 2017-05-25 21:44:44 · 191 阅读 · 0 评论 -
java运算符优先级
Java运算符优先级 序列号符号名称结合性(与操作数)目数说明1.点从左到右双目 ( )圆括号从左到右 [ ]方括号转载 2017-05-25 11:30:38 · 307 阅读 · 0 评论 -
不可变对象
一、概念不可变对象指对象一旦被创建,状态就不能再改变。任何修改都会创建一个新的对象,如 String、Integer及其它包装类。详情参见答案,一步一步指导你在 Java 中创建一个不可变的类。二、创建不可变类的规则如下:1. State of immutable object can not be modified after construction转载 2017-08-30 20:57:09 · 211 阅读 · 0 评论