Java异常处理
Java 异常处理在 Java 中,异常处理是一种重要的编程概念,用于处理程序执行过程中可能出现的错误或异常情况。 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error,如果你用 System.out.println(11/0),那么你是因为你用 0 做了除数,会抛出 java.lang.ArithmeticException 的异常。 异常发生的原因有很多,通常包含以下几大类: 用户输入了非法数据。要打开的文件不存在。网络通信时连接中断,或者JVM内存溢出。 这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。要理解 Java 异常处理是如何工作的,你需要掌握以下三种类型的异常: 检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这些异常在编译时强制要求程序员处理。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。 这类异常通常使用 try-catch...
Java开发环境配置
Java 开发环境配置在本章节中我们将为大家介绍如何搭建Java开发环境。 Windows 上安装开发环境Linux 上安装开发环境Java IDE 介绍 window系统安装java下载JDK首先我们需要下载 java 开发工具包 JDK,下载地址:https://www.oracle.com/java/technologies/downloads/,在下载页面中根据自己的系统选择对应的版本,本文以 Window 64位系统为例: 下载后 JDK 的安装根据提示进行,还有安装 JDK 的时候也会安装 JRE,一并安装就可以了。 安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为 C:\Program Files (x86)\Java\jdk1.8.0_91。 配置环境变量1.安装完成后,右击”我的电脑”,点击”属性”,选择”高级系统设置”; 2.选择”高级”选项卡,点击”环境变量”; 然后就会出现如下图所示的画面: 在 “系统变量” 中设置 3...
Java序列化
Java 序列化Java 序列化是一种将对象转换为字节流的过程,以便可以将对象保存到磁盘上,将其传输到网络上,或者将其存储在内存中,以后再进行反序列化,将字节流重新转换为对象。序列化在 Java 中是通过 java.io.Serializable 接口来实现的,该接口没有任何方法,只是一个标记接口,用于标识类可以被序列化。当你序列化对象时,你把它包装成一个特殊文件,可以保存、传输或存储。反序列化则是打开这个文件,读取序列化的数据,然后将其还原为对象,以便在程序中使用。序列化是一种用于保存、传输和还原对象的方法,它使得对象可以在不同的计算机之间移动和共享,这对于分布式系统、数据存储和跨平台通信非常有用。以下是 Java 序列化的基本概念和用法:实现 Serializable 接口: 要使一个类可序列化,需要让该类实现 java.io.Serializable 接口,这告诉 Java 编译器这个类可以被序列化,例如:实例import java.io.Serializable; public class MyClass implements Serializable { ...
Java封装
Java 封装 在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。 封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。封装的优点 良好的封装能够减少耦合。 类内部的结构可以自由修改。 可以对成员变量进行更精确的控制。 隐藏信息,实现细节。 实现Java封装的步骤 修改属性的可见性来限制对属性的访问(一般限制为private),例如: public class Person {private String name; private int age;} 这段代码中,将 name 和 age 属性设置为私有的,只能本类才能访问,其他类都访问不了,如此就对信息进行了隐藏。2....
Java对象和类
Java 对象和类Java 作为一种面向对象的编程语言,支持以下基本概念:1、类(Class): 定义对象的蓝图,包括属性和方法。示例:public class Car { … } 2、对象(Object): 类的实例,具有状态和行为。示例:Car myCar = new Car(); 3、继承(Inheritance): 一个类可以继承另一个类的属性和方法。示例:public class Dog extends Animal { … } 4、封装(Encapsulation): 将对象的状态(字段)私有化,通过公共方法访问。示例:private String name;public String getName() { return name; } 5、多态(Polymorphism): 对象可以表现为多种形态,主要通过方法重载和方法重写实现。示例:方法重载:public int add(int a, int b) { … } 和 public double add(double a, double b) { … }方法重写:@Override public...
Java实例
Java 实例本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用。 Java 环境设置实例 Java 实例 – 如何编译一个Java 文件?Java 实例 – Java 如何运行一个编译过的类文件?Java 实例 - 如何执行指定class文件目录(classpath)?Java 实例 – 如何查看当前 Java 运行的版本? Java 字符串 Java 实例 – 字符串比较Java 实例 - 查找字符串最后一次出现的位置Java 实例 - 删除字符串中的一个字符Java 实例 - 字符串替换Java 实例 - 字符串反转Java 实例 - 字符串查找Java 实例 - 字符串分割Java 实例 - 字符串分割(StringTokenizer)Java 实例 - 字符串小写转大写Java 实例 - 测试两个字符串区域是否相等Java 实例 - 字符串性能比较测试Java 实例 - 字符串优化Java 实例 - 字符串格式化Java 实例 - 连接字符串 Java 数组 Java 实例 – 数组排序及元素查找Java 实例 –...
Java多线程编程
Java 多线程编程 Java 给多线程编程提供了内置的支持。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分配的内存空间,包含一个或多个线程。一个线程不能独立的存在,它必须是进程的一部分。一个进程一直运行,直到所有的非守护线程都结束运行后才能结束。多线程能满足程序员编写高效率的程序来达到充分利用 CPU 的目的。 一个线程的生命周期 线程是一个动态执行的过程,它也有一个从产生到死亡的过程。下图显示了一个线程完整的生命周期。 新建状态:使用 new 关键字和 Thread 类或其子类建立一个线程对象后,该线程对象就处于新建状态。它保持这个状态直到程序 start() 这个线程。就绪状态:当线程对象调用了start()方法之后,该线程就进入就绪状态。就绪状态的线程处于就绪队列中,要等待JVM里线程调度器的调度。运行状态:如果就绪状态的线程获取 CPU 资源,就可以执行...
Java多态
Java 多态 多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同操作,如图所示: 多态性是对象多种表现形式的体现。 现实中,比如我们按下 F1 键这个动作: 如果当前在 Flash 界面下弹出的就是 AS 3 的帮助文档;如果当前在 Word 下弹出的就是 Word 帮助;在 Windows 下弹出的就是 Windows 帮助和支持。同一个事件发生在不同的对象上会产生不同的结果。 多态的优点 消除类型之间的耦合关系 可替换性 可扩充性 接口性 灵活性 简化性多态存在的三个必要条件继承重写父类引用指向子类对象:Parent p = new Child(); class Shape { void draw() {}} class Circle extends Shape { void draw() { System.out.println(“Circle.draw()”); }} class Square extends Shape { void draw() { ...
Java基础语法
Java 基础语法一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面简要介绍下类、对象、方法和实例变量的概念。 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。 类:类是一个模板,它描述一类对象的行为和状态。 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。 实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。 第一个Java程序下面看一个简单的 Java 程序,它将输出字符串 Hello World 实例 public class HelloWorld {/* 第一个Java程序 * 它将输出字符串 Hello World */public static void main(String[] args) {System.out.println(“Hello World”); // 输出 Hello World}} 运行实例...
Java基本数据类型
Java 基本数据类型变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。 因此,通过定义不同类型的变量,可以在内存中储存整数、小数或者字符。Java 的两大数据类型:内置数据类型引用数据类型 内置数据类型Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。byte: byte 数据类型是8位、有符号的,以二进制补码表示的整数; 最小值是 -128(-2^7); 最大值是 127(2^7-1); 默认值是 0; byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一; 例子:byte a = 100,byte b = -50。 short: short 数据类型是 16 位、有符号的以二进制补码表示的整数 最小值是 -32768(-2^15); 最大值是 32767(2^15 -...