![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java基础知识详解
文章平均质量分 79
从0-1对Java基础知识全面详解
GQ学编程
这个作者很懒,什么都没留下…
展开
-
java中 ++i 和 i++ 的区别,在for循环中又有什么不同
java中 ++i 和 i++ 的区别,在for循环中又有什么不同普通运算中 i++ :先赋值 后进行+1 ++i :先进行+1 后赋值 ------------------------ int i = 0; i = i++; System.out.println(i);//结果为0 ------------------------ int i = 0; i = ++1; System.out.println(i);//结果为1 ------------------------原创 2022-04-28 12:25:53 · 1222 阅读 · 1 评论 -
Java复习知识点一:Java 语言有哪些特点?什么是编译型?什么是解释型?
Java复习知识点一Java的特点Java 语言有哪些特点?java是面向对象的(oop)Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是 Java程序健壮性的重要保证Java语言是跨平台性的即一个编译好的.class文件可以在多个系统下运行Java语言是解释型的支持多线程可靠性;安全性支持网络编程并且很方便( Java 语言诞生本身就是为简化网络编程设计的,因此 Java 语言不仅支持网络编程而且很方便);解释型语言: javascript,PHP原创 2022-05-07 11:56:26 · 336 阅读 · 0 评论 -
Java复习知识点二:JDK、JRE、JVM之间的关系
JDK = JRE + java的开发工具(java、javac、javadoc等)JRE = JVM + Java的核心类库原创 2022-05-07 12:07:25 · 68 阅读 · 0 评论 -
Java复习知识点三: Java数据类型、与数据类型转换
Java的整型常量默认为int,声明long型常量需在后边加 l 或 L原创 2022-05-07 12:39:51 · 110 阅读 · 1 评论 -
Java复习知识点四:Java中有哪几种运算符?
算术运算符、关系运算符(比较运算符)、逻辑运算符、赋值运算符、位运算符、三元运算符原创 2022-05-07 19:38:20 · 700 阅读 · 0 评论 -
Java复习知识点五:Java程序控制结构,if else,switch,while,do while的使用
Java程序控制结构:顺序控制分支控制– if else– switch循环控制– for– while– do while1、顺序控制程序从上到下的逐行的执行,中间没有任何判断和跳转2、分支控制(if else和switch)单分支双分支多分支2.1、单分支基本语法:if (条件表达式) { 执行代码块;(可以有多条语句)}条件表达式为true时,就会执行{}里的代码,如果为false,就不执行特别说明:如果{}中只有一条语句,则可以不用写{}。但建原创 2022-05-08 18:37:21 · 665 阅读 · 0 评论 -
Java复习知识点六:Java中的数组、二维数组、杨辉三角、冒泡排序
数组可以存放多个同一类型的数据。数组属于引用数据类型。原创 2022-05-09 20:00:57 · 232 阅读 · 0 评论 -
Java复习知识点七:类和对象的关系、对象的赋值机制、基本数据类型和引用类型的传参机制(重点)
基本数据类型和引用数据类型的传参机制原创 2022-05-10 20:38:40 · 180 阅读 · 0 评论 -
Java复习知识点八:方法的重载、可变参数、变量作用域、构造方法、this关键字的使用
Java复习知识点八:方法的重载可变参数变量的作用域构造方法(构造器)对象创建流程分析this关键字1、方法的重载基本介绍:Java中允许同一个类中,多个同名方法的存在,但要求形参列表不一致!举例:public void method(){ }public int method(int a, int b){ return a + b;}public int method(int a, int b, int c){ return a + b + c;原创 2022-05-12 14:54:59 · 200 阅读 · 0 评论 -
Java复习知识点九:访问修饰符、封装、继承、方法重写、super、this、多态、多态的向上转型和向下转型
Java复习知识点九:访问修饰符封装继承super关键字super和this的比较重载和重写的比较多态向上转型多态向下转型1、访问修饰符java提供四种访问控制修饰符号,用于控制方法和属性(成员变量)的访问权限(范围):公开级别:用public修饰,对外公开受保护级别:用protected修饰.对子类和同一个包中的类公开默认级别:没有修饰符号,向同一个包的类公开.私有级别:用private修饰,只有类本身可以访问,不对外公开.使用的注意事项:修饰符可以用来修饰类中的原创 2022-05-13 20:32:02 · 191 阅读 · 0 评论 -
Java复习知识点十:==和equals()方法的区别、hashCode()方法、finalize方法
Java复习知识点十:Object类详解1、 == 和 equals的对比== 是一个比较运算符:==既可以判断基本类型,也可以判断引用类型==:如果判断基本类型,判断的是值是否相等==:如果判断引用类型,判断的是地址是否相等,即判定的是不是同一个对象equals方法:是Object类中的方法,只能判断引用类型。默认判断的是地址是否相等,子类中往往重写该方法,用于判断内容是否相等。比如Integer和String。2.1 重写equals方法自定义Person类重写equals方原创 2022-05-14 19:38:00 · 54 阅读 · 1 评论 -
Java复习知识点十一:类变量(静态变量)、类方法、代码块、类的调用顺序(重点)
第七章:(面向对象-高级)1、类变量(静态变量)static变量是同一个类所有对象共享的static在类加载的时候就生成了什么是类变量?类变量也叫静态变量/静态属性,是该类所有对象共享的变量,该类的任何一个对象访问它时,取到的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量定义语法:访问修饰符 static 数据类型 变量名;【推荐】static 访问修饰符 数据类型 变量名;如何访问类变量:类名 . 变量名;【推荐】 或者 对象名 . 变量名 ;原创 2022-05-16 20:38:26 · 327 阅读 · 1 评论 -
Java复习知识点十二:单例设计模式、final关键字、抽象类、接口
第七章:(面向对象-高级)1、单例设计模式静态方法和属性的经典使用什么是单例模式?所谓的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个的对象实例,并且该类只提供一个取的该对象实例的方法单例模式有两种:饿汉式 和 懒汉式构造器私有化 --> 防止new类的内部创建对象向外暴露一个静态的公共方法。getInstanceclass GirlFriend { /* * 单例模式-饿汉式 */ private原创 2022-05-17 20:31:55 · 212 阅读 · 3 评论 -
Java复习知识点十三:四种内部类:局部内部类、匿名内部类、成员内部类、静态内部类
1、四种内部类一个类的内部又完整的嵌套另一个类结构。被嵌套的类称为内部类(inner class)内类的分类:定义在外部类局部位置上(比如方法内):局部内部类(有类名)匿名内部类(没有类名,重点!!!)定义在外部类的成员位置上:成员内部类(没用static修饰)静态内部类(使用static修饰)1.1 局部内部类局部内部类是定义在外部类的局部位置中,比如方法中,并且有类名外部类调用局部内部类:只能使用 外部类对象 调用 局部内部类所处方法,并且在方法中创建局部内部类的实例p原创 2022-05-19 18:01:17 · 415 阅读 · 5 评论 -
Java复习知识点十四:枚举类的使用、JDK基本注解、异常处理
枚举、注解、异常处理枚举注解异常异常处理1、枚举分析下面问题:要求创建 季节(Season)对象,设计并完成;class Season { private String name; private String desc;//描述 public Season(String name, String desc) { this.name = name; this.desc = desc; } //Getter and原创 2022-05-28 22:36:52 · 180 阅读 · 0 评论 -
Java复习知识点十五:包装类、String、StringBuffer 和 StringBuilder类的使用
Integer、String、StringBuffer、StringBuilder类使用原创 2022-06-01 19:22:57 · 136 阅读 · 0 评论 -
Java复习知识点十六:常用类:Math、Arrays类、System、BigInteger、BigDecimal、日期类Date
Java常用类Math、Arrays、日期类原创 2022-06-04 00:06:51 · 94 阅读 · 0 评论 -
Java复习知识点十七:Collection集合、常用方法、迭代器、增强for
Collection集合 的框架体系、以及常用方法原创 2022-06-05 21:52:47 · 135 阅读 · 0 评论 -
Java复习知识点十八:List集合、ArrayList扩容机制、Vector、LinkedList的原理
ArrayList集合的扩容机制、LinkedList的实现原理原创 2022-06-05 22:19:02 · 465 阅读 · 0 评论 -
Java复习知识点十九:Set接口、HashSet底层机制、扩容和转化红黑树、LinkedHashSet
HashSet底层机制、扩容、转化红黑树原创 2022-06-06 22:04:44 · 483 阅读 · 0 评论 -
HashSet如何检查重复?为什么要重写hashCode和equals方法?
底层维护了一个 ,Map中的key是不允许重复的,正好利用了Map中的 来校验重复元素向 添加元素(对象)时, 会先计算对象的 值来判断对象加入的位置是否有元素,如果该位置为null,则直接存放到该位置;如果不为null,则通过对象的 和 进行判断,判断它是否为重复元素,若重复,那么最后会将这个重复元素返回。(注意这里的hash值是经过运算处理后的hash值,不是真正的hashcode值)所以经过上述代码所示,存放自定义对象时,一定要重写hashcode和equals方法来确保set中存放原创 2022-06-06 23:04:24 · 910 阅读 · 0 评论 -
Java知识点二十:Map接口、HashMap、HashTable和TreeSet、TreeMap以及Collections工具类
双列集合Map接口实现类的特点:使用keySet使用EntrySet使用map.values()取出所有值2、HashMapMap接口的常用实现类:HashMap、Hashtable和Properties,HashMap是 Map 接口使用频率最高的实现类。HashMap是以 key-val对的方式来存储数据[案例Entry ]key 不能重复,但是是值可以重复,允许使用null键和null值。如果添加相同的key,则会覆盖原来的key-val ,等同于修改.(key不会替换,原创 2022-06-08 23:08:38 · 152 阅读 · 0 评论 -
Java知识点二十一:泛型、自定义泛型、泛型的通配符
需求:传统方法问题分析:1.2 使用泛型泛型的好处:使用泛型,解决上述问题:1.3 泛型介绍可以理解为:广泛的类型泛型又称参数化类型,是Jdk5.0出现的新特性,解决数据类型的安全性问题在类声明或实例化时只要指定好需要的具体的类型即可。Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生ClassCastException异常。同时,代码更加简洁、健壮泛型的作用是:可以在类声明时通过一个标识表示类中某个属性的类型,或者是某个方法的返回值的类型,或者是参数类型。1.4 泛型语法泛原创 2022-06-09 23:20:58 · 106 阅读 · 0 评论 -
Java知识点二十二:多线程、继承Thread类 和 实现Runnable接口、start方法原理、线程同步
程序:是为完成特定任务,用某种语言编写的一组特定指令的集合进程:线程:**单线程:**同一个时刻,只允许执行一个线程**多线程:**同一个时刻,可以执行多个线程,比如:一个qq进程,可以同时打开多个聊天窗口,一个迅雷进程,可以同时下载多个文件并发:同一个时刻,,造成一种:“貌似同时”的错觉,简单的来说,。并行:同一个时刻,。创建线程的两种方式:使用Thread:应用案例: 请编写程序,开启一个线程,该线程每隔1秒。在控制台输出“瞄瞄,我是小猫咪对上题改进:当输出80次唶嗒,我是小猫咪,结束该线程说明:原创 2022-06-12 12:33:48 · 650 阅读 · 7 评论 -
java知识点二十三:IO流
文件:对我们并不陌生,文件是保存数据的地方,比如大家经常使用的word文档,txt文件.excel文件…都是文件。它既可以保存一张图片,也可以保持视频,声音…文件流:文件在程序中是以流的形式来操作的流:数据在数据源(文件)和程序(内存)之间经历的路径输入流:数据从数据源(文件)读到程序(内存)的路径输出流:数据从程序(内存)写到数据源(文件)的路径创建文件的相关构造器和方法:获取文件的相关信息:创建和删除:I/O是Input/Output的缩写,I/O技术是非常实用的技术,用于处理数据传输。如读/写文原创 2022-06-12 19:22:37 · 122 阅读 · 1 评论 -
Java知识点二十四:TCP网络编程、UDP网络编程、Socket(套接字)
网络通信:网络:ip地址:概念:用于唯一标识网络中的每台计算机查看ip地址: ipconfigip地址的表示形式:点分十进制XX.XX.XX.XX每一个十进制数的范围:0~255ip地址的组成=网络地址+主机地址,比如:192.168.16.69iPv6是互联网工程任务组设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一粒沙子编上一个地址。由于IPv4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展。IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备原创 2022-06-15 10:27:43 · 199 阅读 · 0 评论 -
Java知识点二十五:反射、类加载机制、Class类、反射创建对象
需求:根据配置文件 re.properties指定信息,创建Cat对象并调用方法hi方便之处:可以更改配置文件的方法名称,更改源码中所调用的方法(不需要修改源码)2.2 反射机制Java ReflectionJava反射机制可以完成在运行时判断任意一个对象所属的类在运行时构造任意一个类的对象在运行时得到任意一个类所具有的成员变量和方法在运行时调用任意一个对象的成员变量和方法生成动态代理反射相关的主要类:java.lang.reflection包下2.4 反射优缺点优点:可以动态的创建和使用对象(原创 2022-06-15 10:31:53 · 223 阅读 · 0 评论 -
Java8新特性:Lambda表达式、函数式接口、方法引用 、 构造器引用 和 数组引用
1.2 Lambda表达式语法语法格式1:无参, 无返回值语法格式2:Lambda需要一个参数,但是没有返回值语法格式3:数据类型可以省略,因为可由编译器推断,称为类型维护语法格式4:Lambda 若只需要一个参数时,参数的小括号可以省略语法格式5:Lambda需要两个或以上的参数,多条执行语句,并且可以有返回值语法格式6:当 Lambda 体只有一条语句时,return 与 大括号若有,都可以省略1.3 Lambda总结-> 左边:Lambda形参列表的参数类型可以省略(类型推断)原创 2022-06-16 23:08:30 · 204 阅读 · 2 评论 -
Java8新特性:StreamAPI、创建Stream对象、中间操作、终止操作
**Stream APl ( java.util.stream)**把真正的函数式编程风格引入到Java中。这是目前为止对Java类库最好的补充,因为Stream API可以极大提供Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。Stream是 Java8中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API对集合数据进行操作,就类似于使用SQL执行的数据库查询。也可以使用Stream API来并行执行操作。简言之,S原创 2022-06-16 23:16:02 · 554 阅读 · 1 评论 -
Java8新特性:接口的默认方法和静态方法
interface 的设计初衷是面向抽象,提高扩展性。这也留有一点遗憾,Interface 修改的时候,实现它的类也必须跟着改。为了解决接口的修改与现有的实现不兼容的问题。新 interface 的方法可以用 或 修饰,这样就可以有方法体,实现类也不必重写此方法。一个 interface 中可以有多个方法被它们修饰,这 2 个修饰符的区别主要也是普通方法和静态方法的区别。在 Java 8 ,接口和抽象类有什么区别的?很多小伙伴认为:“既然 interface 也可以有自己的方法实现,似乎和 abstract原创 2022-06-16 23:17:05 · 146 阅读 · 1 评论