
java
最爱琴女E
哈哈哈哈哈哈哈哈哈
展开
-
JavaSE笔记28:注解
注解注解,或者叫做注释类型,英文单词是Annotation注解Annotation是一种引用数据类型,编译之后也是生成xxx.class文件怎么自定义注解[修饰符列表] @interface 注解类型名{ }package se7;/*自定义注解:MyAnnotation */public @interface MyAnnotation { //????????}如何使用,用在什么地方?注解使用时的语法格式:@注解类型名注解可以出现在类上、属性上、方法上原创 2020-12-01 16:42:46 · 127 阅读 · 0 评论 -
JavaSE笔记27:反射机制(二)
反射机制(二)Fieldjava.lang.reflect.Field 代表字节码中的属性字节码,代表类中的成员变量(包括静态变量、实例变量)获取Fieldpackage se6;//反射属性Fieldpublic class Student { //Field翻译为字段,其实就是属性/成员 //4个Field,分别采用了不同的访问控制权限修饰符 public int no; private String name; protected int ag原创 2020-12-01 16:41:41 · 118 阅读 · 0 评论 -
JavaSE笔记26:反射机制(一)
反射机制(一)概述通过java语言中的反射机制可以操作字节码文件(可以读和修改字节码文件)。作用:可以让程序更加灵活反射机制的相关类在:java.lang.reflect.*相关的主要的类有:java.lamg.Class 代表字节码文件,代表一个类型java.lang.reflect.Method 代表字节码中的方法字节码,代表类中的方法java.lang.reflect.Constructor 代表字节码中的构造方法字节码,代表类中的构造方法java.lang.refle原创 2020-12-01 16:40:37 · 152 阅读 · 1 评论 -
JavaSE笔记25:多线程(三)
多线程(三)线程安全什么时候数据在多线程并发的环境下会存在安全问题多线程并发有共享数据共享数据有修改行为满足以上3个条件之后,就会存在线程安全问题同步机制如何解决?线程排队执行(不能并发),专业术语叫做“线程同步机制” 用排队执行解决线程安全问题,这种机制被称为:线程同步机制。注意:线程同步就是线程排队了,线程排队了就会牺牲一部分效率,没办法,数据安全第一位。只有数据安全了,我们才可以谈效率,数据不安全,没有效率的事。说到线程同步这块,涉及到两个专业术语:异步编程模型:线原创 2020-11-25 16:18:25 · 145 阅读 · 0 评论 -
JavaSE笔记24:多线程(二)
多线程(二)线程的生命周期线程的生命周期有:新建状态、就绪状态、运行状态、阻塞状态、死亡状态获取线程对象、名字、修改线程名package se5.thread;/*1.怎么获取当前线程对象 Thread t = Thread.currentThread(); 返回值t就是当前线程2.获取线程对象的名字:String name = 线程对象.getName();3.修改线程对象的名字:线程对象.setName("线程名字");4.当线程没有设置名字的时候,默认的名字的规律如原创 2020-11-25 16:16:57 · 157 阅读 · 0 评论 -
JavaSE笔记23:多线程(一)
多线程(一)1.线程简介任务、进程、线程、多线程多任务,例如:边吃饭边玩手机、边开车边打电话…进程:在操作系统中运行的程序就是进程,如QQ、播放器、游戏…线程:例如,播放器可以听见声音,播放的声音就是一个线程多线程:一个进程可以有多个线程,如视频中同时听声音、看图像、看弹幕…进程与线程的关系举个例子:A:进程 B:进程 a1:A的一个线程 b1:B的一个线程 a2:A的一个线程 b2:B的一个线程注意1:进程A和进程B的内存独立不共原创 2020-11-25 16:14:51 · 164 阅读 · 0 评论 -
JavaSE笔记22:IO流(三)
IO流(三)上一篇:IO流(二)序列化与反序列化java.io.NotSerializableException: se4.bean.StudentStudent对象不支持序列化!参与序列化和反序列化的对象,必须实现Serializable接口注意:通过源代码发现,Serializable接口只是一个标志接口:public interface Serializable {}这个接口当中什么代码都没有作用:起到标识的作用,标志的作用,java虚拟机看到这个类实现了这个接口,可能会对这个类原创 2020-11-15 12:09:17 · 139 阅读 · 0 评论 -
JavaSE笔记21:IO流(二)
IO流(二)上一篇:IO流(一)缓冲流(了解)BufferedReaderpackage se4.io;import java.io.BufferedReader;import java.io.FileReader;/** * BUfferedReader: * 带有缓冲区的字符输入流 * 使用这个流的时候不需要自定义char数组,或者说不需要自定义byte数组。自带缓冲。 */public class BufferedReaderTest01 { public sta原创 2020-11-14 18:32:51 · 145 阅读 · 0 评论 -
JavaSE笔记20:IO流(一)
IO流(一)概述I:InputO:Output通过IO可以完成硬盘文件的读和写*java中所有的流都是在:java.io.下流的分类分类方式:按照流的方向进行分类:(1)以内存作为参照物,往内存中去,叫做输入(Input),或者叫做读(Read)(2)从内存中出来,叫做输出(Output),或者叫做写(Write)按照读取数据方式不同进行分类(1)有的流按照字节的方式读取数据,一次读取一个字节,等同于一次读取8个二进制位这种流是万能的,什么类型的文件都可以读取。 假设原创 2020-11-13 17:09:32 · 183 阅读 · 1 评论 -
JavaSE笔记19:集合(五)
集合回顾集合最主要掌握什么内容?每个集合对象的创建(new)向集合中添加元素从集合中取出元素遍历集合主要的集合类:ArrayListLinkedListHashSet(HashSet的key、存储在HashMap集合key的元素需要同时重写hashCode + equals方法)TreeSetHashMapPropertiesTreeMap回顾List集合需要掌握什么package se3.review;import java.util.ArrayList;imp原创 2020-11-11 16:42:16 · 186 阅读 · 0 评论 -
JavaSE笔记18:集合(四)
集合(四)上一篇:集合(三)HashMap和Hashtable的区别HashMap的key可以为null吗?value呢?都可以为空!package se3.themap;import java.util.HashMap;import java.util.Map;public class HashMapTest03 { public static void main(String[] args) { Map map = new HashMap();原创 2020-11-11 16:40:07 · 235 阅读 · 0 评论 -
JavaSE笔记17:集合(三)
集合(三)SetHashSet集合:无序不可重复package se3.set;import java.util.HashSet;import java.util.Set;public class HashSetTest01 { public static void main(String[] args) { //演示一下HashSet集合的特点 Set<String> strs = new HashSet<>();原创 2020-11-09 17:25:50 · 229 阅读 · 0 评论 -
JavaSE笔记16:集合(二)
集合(二)上一篇:集合(一)关于集合元素的remove迭代过程中,不能直接通过集合删除元素,要通过迭代器删除元素package se3.collection;import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;public class CollectionTest06 { public static void main(String[] args) { C原创 2020-11-08 16:30:15 · 799 阅读 · 1 评论 -
JavaSE笔记15:集合(一)
集合(一)1.集合概述数组其实就是一个集合,集合实际上就是一个容器,一个载体,可以容纳其他类型的数据,一次容纳多个对象集合不能直接存储基本数据类,也不能直接存储java对象,集合当中存储的都是java对象的内存地址(或者说集合中存储的都是引用)不同集合对应不同的数据结构在java中每个不同的集合,底层会对应不同的数据结构,往不同的集合中存储元素,等于将数据放到了不同的数据结构当中。这里只需要掌握怎么用?在什么情况下选择哪一种合适的集合去使用即可new ArrayList(); 创建一个集原创 2020-11-05 17:14:05 · 340 阅读 · 0 评论 -
JavaSE笔记14:日期类、数字类与Random及枚举
日期类java中对日期的处理这个案例主要掌握:知识点1:怎么获取系统当前时间知识点2:String —> Date知识点3:Date —> Stringpackage se2.date;import java.text.SimpleDateFormat;import java.util.Date;public class DateTest01 { public static void main(String[] args) throws Exception {原创 2020-11-02 14:54:00 · 179 阅读 · 0 评论 -
JavaSE笔记13:基本类型对应的8个包装类
基本类型对应的8个包装类1.8种包装类存在的意义java中为8种数据类型又对应准备了8种包装类型。8种包装类属于引用数据类型,父类是Object。为什么要提供8种包装类呢?因为8种基本类型不够用public class IntegerTest01 { public static void main(String[] args) { /*假设有需求:调用doSOme()方法的时候需要传一个数字进去, 但是数字属于基本数据类型,而doSOme方法参数原创 2020-11-01 17:17:29 · 261 阅读 · 0 评论 -
JavaSE笔记12:常用类之StringBuffer与StringBuilder
常用类之StringBufferStringBuffer问:在实际的开发中,如果需要进行字符串的频繁拼接,会有什么问题?答:因为java中的字符串是不可变的,每一次拼接都会产生新字符串,这样会占用大量的方法区内存,造成内存空间的浪费String s = “abc”;s += “hello”就以上两行代码,就导致在方法区字符串常量池当中创建了3个对象“abc”、“hello”、“abchello”public class StringBufferTest01 { public sta原创 2020-11-01 12:39:28 · 230 阅读 · 2 评论 -
JavaSE笔记11:常用类之String类
常用类之String类1.关于JDK内置的一个类:StringString表示字符串类型,属于引用数据类型,不属于基本数据类型在java中随便使用双引号括起来的都是String对象java中规定,双引号括起来的字符串是不可变的在JDK当中双引号括起来的字符串都是直接存储在方法区的字符串常量池当中的由于字符串在实际开发中使用太频繁,为了执行效率,所以把字符串放到了方法区的字符串常量池当中。2.String字符串的存储原理package se2.String;public class S原创 2020-10-31 15:50:20 · 156 阅读 · 0 评论 -
JavaSE笔记10:Object类中的部分方法
Object类中的部分方法toString()方法1.源码public String toString(){ return getClass().getName() + "@" + Integer.toHexString(hashCode());}//源代码上toString()方法的默认实现是:类名 @ 对象的内存地址转换为16进制的形式2.设计出该方法目的/作用toString()方法的设计目的是:通过调用这个方法可以将一个“java对象”转换成“字符串表示形式”3.注意建原创 2020-10-29 14:13:28 · 122 阅读 · 0 评论 -
JavaSE笔记09访问控制权限
访问控制权限1.访问控制权限都有哪些?4个private:私有protected:受保护public:公开默认package se.control;public class User { //给一些属性 //私有的 private int id; //受保护的 protected int age; //公开的 public int weight; //什么也没有,默认 String name;}package原创 2020-10-27 16:32:54 · 95 阅读 · 0 评论 -
JavaSE笔记08异常
异常Exception异常指程序运行中出现的不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。异常发生在程序运行期间,它影响了正常的程序执行流程简单分类要理解java异常是如何工作的,需要掌握以下三种类型的异常检查性异常:最具代表性的异常是用户错误或问题引起的异常,这是程序员无法预见的,例如要打开一个不存在的文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。运行时异常:运行时异常是可能被程序员避免的异常,与检查性异常相反,运行时异常可以在编译时被忽略。错误Error原创 2020-10-22 16:58:41 · 107 阅读 · 0 评论 -
JavaSE笔记07面向对象编程03
面向对象编程031.static关键字补充package com.oop.demo07;public class Student { private static int age;//静态的变量 private double score;//非静态的变量 public void run(){ } public static void go(){ } public static void main(String[] args) {原创 2020-10-21 17:26:27 · 215 阅读 · 0 评论 -
JavaSE笔记06面向对象编程02
面向对象编程021.封装我们程序设计要求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用封装即:属性私有,get/setpackage com.oop.demo04;//类public class Student { //private:私有 //名字 private String name; //学号 private int id; //性别 private char se原创 2020-10-21 17:22:13 · 208 阅读 · 0 评论 -
JavaSE笔记05面向对象编程01
面向对象编程01java的核心思想就是OOP面向过程&面向对象面向过程思想:步骤清晰简单,第一步做什么,第二步做什么…面向过程适合处理一些较为简单的问题面向对象思想:物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后才对某个分类下的细节进行面向过程的思索面向对象适合处理复杂的问题,适合处理需要多人协作的问题对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需原创 2020-10-20 16:00:04 · 190 阅读 · 0 评论 -
JavaSE笔记04方法、数组
1.方法java方法是语句的集合,它们在一起执行一个功能方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用设计方法的原则:一个方法只完成1个功能,这样利于我们后期扩展。方法的定义修饰符 返回值类型 方法名(参数类型 参数名){ ... 方法体 ... return 返回值;}package com.kuang.method;public class Demo01 { //main方法 publ原创 2020-10-19 19:38:32 · 117 阅读 · 0 评论 -
JavaSE笔记03流程控制
Java流程控制1.顺序结构java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句往下执行。顺序结构是最简单的算法结构,它是任何一个算法都离不开的一种基本算法结构。2. 选择结构1.if单选结构语法:if(布尔表达式){ //如果布尔表达式为true将执行的语句}小例子Scanner scanner = new Scanner(System.in);System.out.println("请输入内容:");String s = scanner.nextLi原创 2020-10-18 19:32:15 · 356 阅读 · 0 评论 -
JavaSE笔记02运算符、帮助文档与Scanner
1. 运算符1. 算术运算符:+,-,*,/,%,++,– //二元运算符int a = 10;int b = 20;int c = 25;int d = 25;System.out.println(a + b);//30System.out.println(a - b);//-10System.out.println(a * b);//200System.out.println(a / (double)b);//0.5 //取余,模运算int x = 10;int y = 20原创 2020-10-18 19:30:57 · 259 阅读 · 2 评论 -
JavaSE笔记01:注释、基本数据类型与变量
1. HelloWorld编写代码public class Hello{ public static void main(String[] args){ System.out.println("Hello,World!"); }}代码详解Public class 和 class的区别:一个java文件中可以定义多个classPublic的类可以没有Public的类如果有的话,只能有一个,并且要求类名和文件名一致System.out.println("Hello,W原创 2020-10-17 17:28:17 · 157 阅读 · 1 评论