JAVA
Chyiqi7
这个作者很懒,什么都没留下…
展开
-
JAVA中的变量、作用域、参数
变量:在内存中一块区域,变量的值可以在某一个范围内发生改变。定义变量:数据类型变量名称=变量的值(int num=1)变量的类型:(1).按照变量的位置划分:成员变量:在类的内部或者方法的外部声明的变量。局部变量:在方法的内部声明的变量称为局部变量。区别:①.成员变量可以不用初始化但局部变量必须要初始化②.作用范围不同成员变量作用于整个类而局部变量作用于方法(2).按照变量数据类...原创 2019-09-17 15:42:11 · 540 阅读 · 0 评论 -
Collection接口
1.List接口:存储有序的,可以重复的元素实现类:ArrayList(主要实现类)遍历集合:1.for循环 2.迭代器 3.增强for循环LinkList:主要是对于频繁的插入、删除操作Vector常用方法void add(int index, Object ele):在指定的索引位置添加元素boolean addAll(int index, Collection el...原创 2019-09-17 16:39:50 · 263 阅读 · 0 评论 -
Map接口
Map接口1.存放key-value数据key:不能重复 底层实现使用Setvalue:可以重复 底层实现使用Collection2.实现类①.HashMap:主要实现类②.LinkedHashMap:使用链表的方式维护添加Map元素的顺序③.TreeMap④.Hashtable:线程安全的,不建议使用子类Properties:通常用来处理属性文件,键和值都是 String类型...原创 2019-09-17 16:41:39 · 175 阅读 · 0 评论 -
泛型
泛型:1.在集合中使用泛型2.自定义泛型、泛型接口、泛型方法(了解)3.泛型和继承的关系4.通配符泛型的特点:1.限定了数据类型2.保护了数据类型的安全3.避免了类型转化的异常实现代码// 方式一// 先获取所有key的集合Set<String> set = map.keySet();// 遍历key的集合得到每一个key的值for (String key ...原创 2019-09-17 16:42:51 · 123 阅读 · 0 评论 -
异常
一、异常的体系结构java.lang.Throwable1.Error: 错误 程序不进行处理2.Exception: 异常 在程序开发时,要对这些异常进行处理①.编译时异常 :在编译期间出现的异常②.运行时异常 :在运行期间出现的异常当执行一个程序时,如果出现异常,那么异常之后的代码就不会执行。二、如何处理Exception异常处理异常的方式:抓抛模型1.抛:当执行...原创 2019-09-17 16:48:04 · 122 阅读 · 0 评论 -
JAVA中Thread类的常用方法
Thread类的常用方法:1.start():启动线程并执行相应的run()方法2.run():子线程要执行的代码放入run()方法中3.currentThread():获取当前的线程 //静态方法4.getName():获取子线程的名称5.setName():设置子线程的名称6.yield():调用此方法的线程释放当前CPU的执行权7.join():在子线程1中调用线程2...原创 2019-09-17 16:52:16 · 652 阅读 · 0 评论 -
多线程实例-生产者消费者实例
问题生产者(Productor)将产品交给店员(Clerk),而消费者(Customer)从店员处取走产品,店员一次只能持有固定数量的产品(比如:20),如果生产者试图生产更多的产品,店员会叫生产者停一下,如果店中有空位放产品了再通知生产者继续生产;如果店中没有产品了,店员会告诉消费者等一下,如果店中有产品了再通知消费者来取走产品。这里可能出现两个问题:1.生产者比消费者快时,消费者会...原创 2019-09-17 16:59:41 · 369 阅读 · 0 评论 -
程序存在线程安全问题怎么解决?
1.问题:此程序存在线程安全问题原因:由于一个线程在操作共享数据过程中,未执行完毕的情况,另外的子线程此时参与进来,导致共享数据出现安全问题。2.如何解决线程安全问题?必须让一个线程操作共享数据完毕以后,其他线程才有机会参与共享数据的操作。3.Java实现多线程安全使用的是线程的同步机制方式1:同步代码块语法:synchronized(同步监视器){ 需要同步的代码块(共享的数...原创 2019-09-17 17:02:39 · 149 阅读 · 0 评论 -
IO流实例-字节流
// 从硬盘存在的一个文件读取内容到程序,需要使用FileInputStream @Test public void testFileInputStream1() throws IOException { // 1.创建一个File对象 File file = new File("hello.txt"); // 2.创建一个FileInputStream类的对象 FileI...原创 2019-09-17 17:04:56 · 141 阅读 · 0 评论 -
数据类型
1.基本数据类型int num1=10;int num2=10;System.out.println(num1==num2);2.引用数据类型2.1String字符串String str=“abc” 表示是一个字符串常量,存放在常量池中,属于方法区1.当执行String str1=“abc”;时,会在常量池中查找"abc"字符串,如果没有找到,将字符串放入字符串常量池中,而在内存...原创 2019-09-17 16:36:31 · 131 阅读 · 0 评论 -
java中equals和==操作符的区别
equals和==操作符equals方法存在于Object类中,因为Object是所有类的直接或者间接父类所有类的equals方法都继承于Object类,Object类中的equals方法底层依赖的是==操作符==操作符:是比较的地址值...原创 2019-09-17 16:28:27 · 140 阅读 · 0 评论 -
JAVA中的数据类型转换
JAVA中的数据类型转换分为三类1.自动转化(隐式转化)2.强制类型转化 通过(数据类型)3.包装类 XXX.parseXXX()public class Demo { public static void main(String[] args) { // 强制类型转化 影响:会出现精度丢失情况 double d=2.5678; int num=(int)d; Sy...原创 2019-09-17 15:45:36 · 214 阅读 · 0 评论 -
JAVA中数组的使用
数组的概念:存储一组相同类型的数据数组的分类:(1).基本数据类型的数组基本数据类型:byte short int long char boolean float double默认值: 0 0 0 0 空格 false 0.0 0.0(2).引用数据类型的数组String Person 接口默认值:都是null注意:(1).数组的索引是从...原创 2019-09-17 15:54:33 · 105 阅读 · 0 评论 -
JAVA中二维数组的使用
二维数组:数组中数组声明二维数组: 数据类型[][] 数组名称;初始化二维数组:1.动态初始化2.静态初始化 // 动态初始化 // 第一个[]:是由几行组成 表示是由几个一维数组 // 第二个[]:是由列组成 表示每一个一维数组中有几个元素 int[][] numbers=new int[3][2]; // 如何赋值 numbers...原创 2019-09-17 15:57:13 · 290 阅读 · 0 评论 -
JAVA中方法的定义及使用
1.方法的定义:将特定功能的代码组织在一起。2.方法的语法: 访问修饰符 返回值类型 方法名称(形参列表){ 方法体... return 返回值; }访问修饰符:–public:公共的 公开的–private 私有的 仅限在当前类中访问返回值类型:– void:无返回值– 其他类型:有返回值方法名称:命名规则:xxxYyyZzz形参列表:(形式上的...原创 2019-09-17 16:05:20 · 619 阅读 · 0 评论 -
面向对象三大特征之封装
封装:封装其实是保护类的一个屏障,防止外界任意去访问类的成员。将类的内部细节隐藏起来,对外提供访问的接口。1.实现方式①.将类的属性声明为私有②.对外提供可以访问的setXXX()和getXXX()方法(类似于文件的读写权限)2.构造器(构造方法)1).创建对象2).与当前类同名,没有返回值3).每个类都有构造器4).构造器也可以实现重载5).当类中显示的定义构造器时,把隐式...原创 2019-09-17 16:13:24 · 94 阅读 · 0 评论 -
面向对象三大特征之多态
1.概念:同一个动作用于吧不同的对象产生不同的行为2.体现方式1).方法重载 overload2).方法重写 override3).对象的多态性:父类的引用指向子类的实例3.多态可以分为编译时多态和运行时多态①.编译时多态:静态的,主要指的是方法重载,因为在编译时调用相同的方法通过不同的形参列表来区分。②.运行时多态:动态的,也称之为动态绑定,主要指的是对象的多态性,因为只有在运...原创 2019-09-17 16:14:49 · 228 阅读 · 0 评论 -
JAVA中抽象类和抽象方法的使用
1.抽象类:通常当做类的父类,主要是定义一些类的功能①.语法:abstract class{}②.普通类中不能定义抽象方法③.抽象类中可以不包含抽象方法(有抽象方法的类一定是抽象类)④.抽象类不能被实例化2.抽象方法①.语法:abstract 方法名();–使用abstract关键字修饰–抽象方法没有方法体②.子类必须全部实现父类中的抽象方法/** * 抽象方法:工作 ...原创 2019-09-17 16:19:40 · 326 阅读 · 0 评论 -
接口interface
接口概念:1.可以实现不同类的相同行为,不用考虑类之间的层次关系2.接口是将相同的行为整合到一起的集合。3.接口中只能包含抽象方法和常量。接口语法:interface 接口名称 (使用大写字母I开头)接口中的方法:1.接口中的方法都是抽象方法,会将abstract关键字省略掉public abstract 返回值类型 方法名称();2.实现接口的类(实现类)必须要全部实现接口中...原创 2019-09-17 16:25:54 · 114 阅读 · 0 评论 -
io流
1.IO流的分类①.按照数据流向的不同:输入流(input)、输出流(output) 是相对于程序而言②.按照处理数据的单位不同:字节流、字符流字节流:byte 音频、视频、图像字符流:char 文本文件③.按照角色的不同:节点流、处理流节点流:直接作用于文件(文件流)处理流:加速文件的读写操作(缓冲流)2.IO流的体系结构节点流 抽象类FileInputStream 字...原创 2019-09-17 17:10:30 · 212 阅读 · 0 评论