文章分类 - Java学习
JUC高阶
摘要:JUC并发编程高阶 第二章:线程基础知识2复习 为什么需要学好多线程 摩尔定律:它是由英特尔创始人之一Gordon Moore提出来的。其内容是:当价格不变时候,集成电路上可容纳的元器件的数目约每隔18-24个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18-24个月
阅读全文
泛型
摘要:泛型(Generics) 泛型简介 泛型的基本概念 泛型是JDK1.5以后增加的,他可以帮助我们建立类型安全的集合 泛型的本质就是数据类型的参数化,处理的数据类型不是固定的,而是可以作为参数传入。我们可以把泛型理解为数据类型的一个占位符,即告诉编译器,在调用泛型的时候必须传入实际类型。这种参数类型可
阅读全文
JavaIO流
摘要:
Java的IO流 什么是IO 对于任何程序设计语言而言,输入输出(Input/Output)系统都是非常核心的功能。程序运行需要数据,数据的获取往往需要跟外部系统进行通信,外部系统可能是文件,数据库,其他程序,网络,IO设备等等。外部系统比较复杂多变,那么我们有必要通过某种手段进行抽象,屏蔽外部的差
阅读全文

Java数据结构和算法(更新中)
摘要:# Java数据结构和算法 ### 几个常见的经典面试题 - 字符串匹配问题 1. ==暴力匹配== 2. ==KMP算法== - 汉诺塔游戏 - 八皇后问题 1. 分治算法 - 马踏棋盘算法 1. 图的深度优化遍历算法(DFS)+贪心算法优化 ### 数据结构和算法的重要性 1. 算法是程序的灵魂
阅读全文
JUC并发编程
摘要:# JUC并发编程基础(java.util.concurrent) - 面试:单例模式,排序算法,生产者消费者模式,死锁 ### 传统的Synchronized ```java package demo1; import java.util.Iterator; import java.util.co
阅读全文
JVM(图片丢失)
摘要:# JVM学习 ### JVM的体系结构 - JVM包括java的堆(heap),栈(stack),方法区(method area),本地方法区(native),程序计数器,本地方法栈,本地方法库,执行引擎 - JRE中包括JVM -  - 详细的J
阅读全文
Java的内部类
摘要:1.什么是内部类? 内部类:定义在类当中的一个类 2.为什么要使用内部类? 1.增强封装,把内部类隐藏在外部类当中,不允许其他类访问这个内部类 2.增加了代码一个维护性 3.内部类可以直接访问外部类当中的成员 3.内部类可以分为哪几种? 内部类可以分为四种: 1.实例内部类:直接定义在类当中的一个类
阅读全文
Java中的接口
摘要:Java中的接口(接口不是类) 关键字:interface,implements interface MyInterface{ void print() void setName() ...... } //interface前面可以加修饰符 实质:接口中定义的方法其实都是抽象的public abst
阅读全文
Java中的抽象类
摘要:Java的抽象类 关键字:abstract abstract class { public void print(){} ... } 抽象类的作用(约束作用):在抽象类中有方法,但没有方法体,是空的方法,要求子类去继承实现方法体。将工程共用的方法抽象出来,放在抽象类中,然后子类继承并实现他,以节约代
阅读全文
Java的static关键字
摘要:Java的static关键字 静态属性属于类,可以直接调用,而非静态类需要new对象才能被调用 拓展:代码块 public class Student{ { 匿名代码块 } static{ 静态代码块 } public Student(){ } } 注意:静态属性只执行一次,与类同时加载 。fina
阅读全文
Java面向对象
摘要:JAVA面向对象01 面向过程:步骤清晰简单,第一步做什么,第二部做什么清晰,适合处理简单的问题 面向对象思想:物以类聚,分类的思维模式,思考问题首先明白解决问题需要哪些分类,然后对这些分类进行单独的思考,最后 ,才对具体的类下的具体的细节进行面向过程的思考,所以面向对象适合处理复杂的问题及多人协作
阅读全文
Java的数组
摘要:java的数组的定义和初始化 定义 int[] 数组名 或 int 数组名[] 调用数组(分配空间创建数组)(初始化数组) int[] arrays ; arrays = new int[10]; 或 int[] arrays=new int[10];(以上是动态初始化数组)(动态初始化含有默认初始
阅读全文
Java的递归
摘要:递归 自己调用自己 递归的好处 用简单的程序解决复杂的问题,通常把一个复杂的问题层层转化为一个于原问题相似的规模较小的问题来解决,递归策略只需用少量的代码程序来完成多次重复的计算,减少了代码量。 递归结构包括两部分 递归头:什么时候不调用自己,没有头,将进入死循环 递归体:什么时候调用自己 publ
阅读全文
Java命令行传参
摘要:java的命令行传参 编译源文件 在命令行编译时先进入源文件的所在的目录下,然后编译,若源文件中含有中文,比如包名,则:javac -encoding utf8 文件名.java 这不会报错 执行class文件 若源文件中含有包名,则要回到包名所在的目录执行,否则会报错 单独运行class文件的注意
阅读全文
Java的可变参数
摘要:Java的可变参数 JDK1.5之后,java支持传递同类型的可变参数给一个方法 在方法申明中,在指定的参数类型后面加省略号(...) 一个方法只能由一个可变参数,他必须在其他类型参数的后面。
阅读全文
Java方法的重载
摘要:含义 重载就是方法名字相同,但形参不一样 规则 方法名称相同 参数列表不同(参数类型不同,参数个数不同,参数的排列顺序不同) 仅仅返回类型不同,不足以成为方法的重载 实现理论 方法名称相同,编译器会根据参数类型或个数或顺序的不同来调用相应的方法,若不存在则报错 package 狂神说java学习;
阅读全文
Java的定义和调用
摘要:定义 方法是解决一个问题的语句的有序集合 方法包含于类或方法中 方法在程序中创建,在别的地方引用 public static void main(){ 方法体; } //修饰符 返回值类型 方法名(){ 方法体 } 原则 遵守原子原则,一个方法实现一个功能,利于后期拓张 拓张 return 0;遇到
阅读全文
Java while dowhile for
摘要:Java的循环语句 while循环语句 while(布尔值表达式){ 语句; } do while循环语句 do{ 语句; }while(布尔表达式); for循环语句 for(初始值;条件表达式;迭代){ 语句; } while循环注意点: 只要布尔值为true,循环就会一直执行下去 我们大多数情
阅读全文
Java if switch
摘要:IF语句的分类 if单选择结构(条件成立执行) if(布尔值类型){ 语句; } if双选择结构(非此即彼) if(){ 语句; }else{ 语句; } if多选择结构(满足其一即可,否者执行else后面的语句) if(){ 语句; }else if(){ 语句; }else if (){ 语句;
阅读全文
Java的用户交流Scanner用法
摘要:Scanner的定义 Scanner是java.unti.Scanner工具包中的类,Java5的新特性,可以通过Scanner类来获取用户的输入 基本语法: Scanner scanner = new Scanner(System.in);//new方法来创建Scanner类对象scanner s
阅读全文