JAVA 对象和类 技术教程文章

java将文件转为UTF8工具类【代码】

package hiveTest;import java.io.BufferedReader; import java.io.DataInputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.Writer;publicclass GBKTransferUTF8 {privatestaticvoid transferFile(String srcFileName, String destFileName) throws IOException {String line_sep...

java中检测-在运行时指定对象是否是特定类的一个实例---关键字 instanceof【代码】

java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。if(request instanceof HttpServletRequest){ System.out.println("-------------"); } 原文:https://www.cnblogs.com/czlovezmt/p/9728353.html

Java的类加载机制【代码】【图】

一、什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。 类加载器并不需要等到某个类被“首次主动使用”时再加载它,JVM规范允许类加载器在...

Java集合类汇总记录--guava篇

BiMapHashBiMap<K,V>实现了两份哈希表数据结构(本类独立实现)。分别负责两个方向的映射。 EnumBiMap<K,V>两个EnumMap对象分别负责两个方向的映射。 EnumHashBiMap<K,V>一个EnumMap对象负责K到V映射,一个HashMap对象负责V到K的影身。 MultiMap HashMultimap<K,V>使用HashMap<K,HashSet<V>>对象实现。 TreeMultimap<K,V>使用TreeMap<K,TreeSet<V>>实现。 ArrayListMultimap使用HashMap<K, ArrayList<V>>实现。 LinkedHashMultimap...

动车上的书摘-java对象流与序列化【代码】【图】

动车上的书摘-java对象流与序列化摘要: 摘要: 原创出处: http://www.cnblogs.com/Alandre/ 泥沙砖瓦浆木匠 希望转载,保留摘要,谢谢!钢笔不限贵便宜,书法是来自心对手的交流。-泥沙砖瓦浆木匠 一.对象序列化当需要存储相同类型的数据,选择固定的长度记录是好选择。但是在面向对象(OOP)程序中,对象之间很少有全部相同的类型。所以,java语言支持一种称为对象序列化(object serialization)的机制。下面展示一个序列化例子,...

Java基础班学习笔记(11)API常用类(二)

1:StringBuffer(掌握) (1)用字符串做拼接,比较耗时并且也耗内存,而这种拼接操作又是比较常见的,为了解决这个问题,Java就提供了 一个字符串缓冲区类。StringBuffer供我们使用。 (2)StringBuffer的构造方法 A:StringBuffer() B:StringBuffer(int size) C:StringBuffer(String str) (3)StringBuffer的常见功能(自己补齐方法的声明和方法的解释) A:添加功能 public StringBuffer append(String str) public StringBuffe...

面向对象的异常处理之深入理解java异常处理机制

什么是异常?  异常是对问题的描述,将问题的对象进行封装;  异常体系的特点:异常体系中的所有类以及建立的对象;  都具有可抛性,也就是说可以被throw和throws关键字所操作,只有异常体系具有该特点;  throws定义在函数上,用于抛出异常类;throw定义在函数内,用于抛出异常对象,前者可以抛出多个,用逗号隔开。代码加注释讲解:package demo1;/* * 有一个圆形和长方形* * */class NoValueException extends Exceptio...

Java嵌套类,内部类和外部类【代码】

1.嵌套类,内部类  嵌套类是指被定义在一个类内部的类;  JAVA的嵌套类有很多种类:1.静态成员类;2.非静态成员类;3.匿名类;4.局部类;其中,除了静态成员类之外,其他的都是内部类,因为静态成员类更像是一个独立的类; 但是静态成员类,是外部类内部的一个成员,静态成员类的访问和其他的静态成员一样:1.通过外部类类名调用;2.如果静态成员类定义为私有,那么只能在外部类内部使用 JAVA 内部类可以很...

java回顾之包装类【代码】

Java包装类由于基本类型比如int,char不具有支持面向对象的编程机制,比如所有引用类型的变量都继承与Object,都可以当成Object使用,如果有个方法需要Object类型的参数,但是实际需要的值却是2,3等数值,这就比较难处理所以Java提供了8种包装类byte-》Byteint->Integer等等同时Java提供了自动装箱(把基本类型直接赋值给对应的包装类),和自动拆箱(把包装类直接赋值给对应的基本类)功能。例如public class AutoBoxingUnBoxing {...

Java为什么使用抽象类和接口

Java为什么使用抽象类和接口 Java接口和Java抽象类代表的就是抽象类型,就是我们需要提出的抽象层的具体表现。OOP面向对象的编程,如果要提高程序的复用率,增加程序的可维护性,可扩展性,就必须是面向接口的编程,面向抽象的编程,正确地使用接口、抽象类这些太有用的抽象类型做为你结构层次上的顶层。  1、Java接口和Java抽象类最大的一个区别,就在于Java抽象类可以提供某些方法的部分实现,而Java接口不可以,这大概就是Ja...

Java线程池 ThreadPoolExecutor类【代码】

什么是线程池?java线程池是将大量的线程集中管理的类, 包括对线程的创建, 资源的管理, 线程生命周期的管理。当系统中存在大量的异步任务的时候就考虑使用java线程池管理所有的线程, 从而减少系统资源的开销。阿里的开发手册规范线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样 的处理方式让写的人更加明确线程池的运行规则,规避资源耗尽的风险。Executors 返回的线程池对象的弊端如下: FixedThrea...

【JAVA中String、StringBuffer、StringBuilder类的使用】【代码】【图】

一、String类概述1.String对象一旦创建就不能改变。2.字符串常量池。字符串常量池的特点:池中有则直接使用,池中没有则创建新的字符串常量。例1: 1publicclass StringDemo2{3publicstaticvoid main(String args[])4 {5 StringDemo1();6 7 }8publicstaticvoid StringDemo1()9 { 10 String str1="abcd"; 11 String str2="abcd"; 12 System.out.println(str1==str2); 13 } 14 }View Code...

Java基础第9天+final关键字、多态(上转型,下转型)、抽象类(特点,成员特点)、接口(特点,成员特点)【代码】

1:final关键字(掌握)(1)是最终的意思,可以修饰类,方法,变量。(2)特点:A:它修饰的类,不能被继承。B:它修饰的方法,不能被重写。C:它修饰的变量,是一个常量。(3)面试相关:A:局部变量a:基本类型 值不能发生改变b:引用类型 地址值不能发生改变,但是对象的内容是可以改变的B:初始化时机a:只能初始化一次。b:常见的给值定义的时候。(推荐)构造方法中。 2:多态(掌握)(1)同一个对象在不同时刻体现出来的不同状态。(2)多态的前提:A...

Java类、实例的初始化顺序【代码】

题目:public class InitTest{public static int k = 0;public static InitTest t1 = new InitTest("t1");public static InitTest t2 = new InitTest("t2");public static int i = print("i");public static int n = 99;public int j = print("j");{print("Creat");}static {print("Static");}public InitTest(String str) {System.out.println((++k) + ":" + str + " i=" + i + " n=" + n);++n; ++ i;}public static int prin...

Java中类与对象的介绍

1-01.面向相对的思想最常见的有两种编程思想:面向对象和面向过程。其中,面向过程的思想是指在需要实现一个功能时,每一个具体的步骤都需要程序员亲力亲为,对处理每一个细节做好详细处理;面向对象的思想是指当需要一个功能时,不需要关心具体的步骤,而是找一个已经具有该功能的“人”来帮你做这件事。面向对象思想具有三大特性:封装性,继承性,多态性。1-02.类与对象的关系类是一组相关属性(事物的状态信息)和行为(事物能...

深耕静禅_Java_内部类_2020年4月6日17:26:02【代码】

内部类为一直忽略技术点,其后即为Socket技术,其与注解、枚举、泛型等先前内容并无关,但在阅读其他框架或工具代码时所见,故整理此文。本文简易仅供概述,如有遗漏将在来补充。——2020年4月6日概述内部类即类中类,至此类中不仅可存在属性方法代码块,亦可存在类尔。内部类分为:成员内部类、局部内部类、匿名内部类、静态内部类。应用现有较少,但实际代码中可能会出现其内容,需理解看懂。内部类亦为类,编译时亦会出现class文...

java 匿名内部类

原文:http://www.cnblogs.com/nerxious/archive/2013/01/24/2875649.html匿名内部类也就是没有名字的内部类正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 实例1:不使用匿名内部类来实现抽象方法12345678910111213141516abstract class Person { public abstract void eat();} class Child extends Person { public void eat() { ...

自学Java测试代码 - 简单地Student类【代码】

2017-08-23 23:45:38writer:pprp写这个还蛮开心的package test;publicclass Student {//创建成员变量String name = "";String code = "";String sex = "";double achievement;//构造函数public Student(String name){this.name = name;}//初始化函数void set(String name, String code, String sex){this.name = name;this.code = code;this.sex = sex;}//得到变量public String getname(){return name;}public String getcode()...

java对象封装的理解【代码】

class A{ private String name; private String value; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getValue() { return value; } public void setValue(String value) { this.value = value; } public A(String name){ this.name = name; } @Override public String toStri...

Java中的集合类

作用:操作中大量对象的临时存放问题,由于数组存在不能灵活变换存放空间大小,所有就有了集合.注:数组和集合的区别:数组长度不可变,且存储基本数据类型,集合长度可变,只能存储对象因为容器中数据结构不同,容器有很多种,不断的共性功能抽取,形成了集合体系.集合框架:Collection ├List:有序(存入的顺序和取出的顺序一致).有索引.允许重复元素│├LinkedList 链表结构 增删快(相对于ArrayList)│├ArrayList 数组结构 查询快(相对于Lin...