![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java学习
程序媛阿洁
一天比一天努力,热爱生活。
展开
-
[JavaSE]遍历字符串数组四种方法
toCharArray()方法for循环遍历:第一种:创建数组char[] c=str.toCharArray(),将循环变量置为数组下标即,c[count]为打印字符元素package package1128;public class TestAroundArray { public static void main(String[] args) { St...原创 2019-11-28 12:37:34 · 3517 阅读 · 0 评论 -
[Java集合类]集合框架以及背后的数据结构
预备知识什么是数据结构?组织大量的数据--增删改查什么是集合类?Java提供的一套现成的类,实现了常用的数据结构Java集合框架(Java Collection Framework):又被称为容器container是定义在java.util包下的一组接口interfaces和其实现类 classes为什么要实现集合框架?将多个元素 element 置于一个单元中,...原创 2019-11-27 22:09:12 · 164 阅读 · 0 评论 -
Java内存划分
内存划分:程序计数器 (PC Register): 只是一个很小的空间, 保存下一条执行的指令的地址.虚拟机栈(JVM Stack): 重点是存储局部变量表(当然也有其他信息). 我们刚才创建的 int[] arr 这样的存储地址的引用就是在这里保存.本地方法栈(Native Method Stack): 本地方法栈与虚拟机栈的作用类似. 只不过保存的内容是Native方法的局部变...原创 2019-11-26 21:23:40 · 145 阅读 · 0 评论 -
[java多线程]的同步问题
指的是多个线程同时修改一个过程时,可能导致的问题引入:以卖票问题为例:假设总共有十张票,三个黄牛卖票(代表三个子线程),预测最后一个黄牛卖完票,还剩下0张票package se.SE.practice;class MyThread implements Runnable { private int ticket=10; @Override public vo...原创 2019-11-12 00:56:28 · 141 阅读 · 0 评论 -
[javaSE]反射机制
Java反射没有反射就没有任何EE框架!对象的正向处理是什么呢?就是根据类产生对象,举一个简单的日期类为例Date date=new Date();System.out.println(date);反射:对象的反向处理。根据对象倒推类的组成。反射的核心处理在于Object类的方法:---取得类的class对象查看Object类方法:[Alt+7]查看其源码:...原创 2019-11-09 22:31:17 · 113 阅读 · 0 评论 -
[JavaSE]this和static关键字
目录1this关键字1.1this表示本类属性1.2this表示本类方法(表示构造方法/表示普通方法/this表示当前对象)2.static(重要!)(修饰属性/修饰本类方法/修饰内部类)1this关键字1.1this表示本类属性程序的就近取用原则,参数与类中属性同名时,为对象赋值 public Person(String name,int age){ ...原创 2019-10-30 14:04:30 · 107 阅读 · 0 评论 -
[Java多线程]守护线程
守护线程守护线程时一种特殊的线程,又称为陪伴线程java中有两种线程:1用户线程2守护线程Thread类提供isDaemon()区别两种线程,false为用户线程true为守护线程java中典型的守护线程就是垃圾回收线程只要当前JVM中存在任何一个用户线程没有线程,守护线程就在工作只有当最后一个用户线程结束时,守护线程才会随着JVM停止工作Thread...原创 2019-10-29 22:12:45 · 87 阅读 · 0 评论 -
[Java多线程]线程优先级
线程优先级是指优先级越高越有可能先执行,但仅仅是有可能而已(cpu到底是否采纳,不一定)设置优先级一般来说优先级是1-10的整数public final void setPriority(int newPriority)取得优先级public final void getPriority()MAX_PRIORITY 10最高优先级 MIN_PRIORITY...原创 2019-10-28 22:27:50 · 156 阅读 · 0 评论 -
[Java多线程]使用callable接口实现多线程
目录call方法:Future接口:RunnableFuture接口:泛型相关基础知识:https://blog.csdn.net/weixin_42645168/article/details/102768764学习callable接口之前先观察collable接口的包:jdk1.5新增的高并发编程包(JUC)package java.util.concurre...原创 2019-10-27 22:01:52 · 372 阅读 · 0 评论 -
[JavaSE]泛型
目录预备知识:jdk1.5新特性:泛型 枚举 注解/可变参数/foreach循环/静态导入/向上转型(90%):父类 父类引用=子类实例 //以物换物/向下转型(1%):子类 子类引用=(子类)父类实例泛型类:(T/E/KV)泛型方法(泛型类与泛型方法共存时/规范)通配符(?/?extends类:/T extends 类:/? extends 类:/? super 类:...原创 2019-10-27 17:55:29 · 162 阅读 · 0 评论 -
[Java多线程]常用操作方法
目录线程的命名和取得先设置再启动关于Thread.sleep()和Thread.currentThread().sleep()Thread.sleep():Thread.currentThread():先启动再设置:主线程名称线程休眠方法:sleep()---单位为毫秒线程休眠:运行-->阻塞线程让步(yield())方法:运行--就绪sleep方...原创 2019-10-25 20:14:40 · 502 阅读 · 0 评论 -
[JavaSE]匿名内部类
匿名内部类定义:也就是没有名字的内部类正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写前提条件:必须继承一个父类或实现一个接口实例1:不使用匿名内部类来实现抽象方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...原创 2019-10-24 20:21:43 · 115 阅读 · 0 评论 -
[Java多线程]继承Thread类/实现Runnable接口
目录1进程与线程:1.1进程:1.2线程:1.3两者关系:2多线程的实现:2.1继承Thread类(单继承局限)总结:2.2Runnable接口实现多线程2.3继承Thread类与实现Runnable接口的关系:1进程与线程:1.1进程:一个操作系统中一个程序的执行周期1.2线程:一个进程同时执行多个任务。通常来讲,每个任务就可以成称为一个线...原创 2019-10-24 20:52:49 · 299 阅读 · 0 评论 -
[JavaSE]类与对象
原创 2019-09-26 18:52:31 · 158 阅读 · 0 评论 -
[javaSE]抽象类
目录抽象类抽象方法:本地方法有关抽象类的使用限制!!抽象类定义:抽象类是普通类的超集,只是比普通类多了一些抽象方法而已抽象方法:定义:使用abstract关键字定义的只有方法声明没有方法体的方法public abstract void test();本地方法使用native关键字定义的只有方法声明没有方法体的方法//java调用C同名...原创 2019-03-23 22:09:40 · 130 阅读 · 1 评论 -
[面试题]杨辉三角-力扣(LeetCode)
问题来源:https://leetcode-cn.com/problems/pascals-triangle/来源:力扣(LeetCode)问题描述:给定一个非负整数numRows,生成杨辉三角的前numRows行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1...原创 2019-05-08 23:29:59 · 131 阅读 · 0 评论 -
[JavaSE]异常体系
目录1异常 1.1异常的理解 1.2调用栈e.printStackTrace();2异常体系2.1异常的类继承关系:2.2异常处理(throw/throws)2.3自定义异常1异常1.1异常的理解我们编写代码的时候,例如打印一个数字除以0或者给定数组长度不够打印需要的数组下标等等问题一旦出现了异常,程序就会终止。异常...原创 2019-05-02 13:33:34 · 188 阅读 · 2 评论 -
[JavaSE]String类
目录1引用2String类2.1String类的两种实例化方式:(直接赋值/构造方法/池/常量池)2.2字符串相等比较("=="比较字符串/equals()比较字符串)2.3字符串常量不可变更2.4char-------String(补充!String类和基本类型的转换)2.5Byte-------String 2.6何时使用 byte[], 何时使用 cha...原创 2019-04-13 20:57:10 · 229 阅读 · 0 评论 -
[JavaSE]Object类 包装类
目录Object类包装类装箱与拆箱String<->基本类型Object类定义:Object类是java默认提供的一个类,java里面除了Object类,所有的类都有继承关系。通俗点讲就是 所有类都可以使用Object类接收toString:取得对象信息System.out.println()系统输出输出对象时,默认会调用该对象的toString()...原创 2019-04-24 19:21:35 · 169 阅读 · 0 评论 -
设计模式(代理设计模式/工厂方法模式)----------接口的应用
预备知识:浅谈接口--------如何有效避免java开发中的单继承局限浅谈抽象类-------------普通类的超集。问题引入:买口红(lipstick)问题问题本质:主方法(客户端)直接与具体产品交互解决-------->将客户端产生商品的行为提取到一个新的类中import java.util.Scanner;interface Lipstic...原创 2019-03-31 20:52:31 · 145 阅读 · 0 评论 -
[JavaSE]接口--------如何有效避免java开发中的单继承局限
预备知识:多态、内部类知识点总结(向上、向下转型) 浅谈抽象类-------------普通类的超集目录接口子类继承抽象类实现接口:接口的应用:抽象类和接口的区别:接口定义:抽象方法和全局常量的集合,在java中用interface关键字定义eg.定义一个简单的接口interface IMessage{public static final ...原创 2019-03-28 22:36:00 · 404 阅读 · 0 评论 -
浅谈模板设计模式-------------基于抽象类的设计模式。
--------问题引入:咖啡与茶在制作过程中烧水与倒入杯中的过程中重复操作,将这两个方法提取出来,放在基类中,然后让咖啡与茶都继承此父类1.泡咖啡烧水 泡咖啡 倒入杯子中 加糖2.泡茶烧水 浸泡茶 倒入杯子中 加枸杞从以上的两个冲泡动作来看,不论是泡茶还是泡咖啡都有一些重复编写的代码我们可以用抽象类来减少代码的重复量。假设抽象类为Coffeei...原创 2019-03-28 21:47:16 · 354 阅读 · 0 评论 -
[JavaSE]final------不能被继承?
final使用final修饰类、方法、属性 final成员变量必须在声明的时候初始化或者在构造器中初始化 否则就会报编译错误 使用final定义的类不能有子类(String类便是使用final定义) final一旦修饰一个类之后,该类的所有方法默认都会加上final修饰。(不包含成员变量)使用final定义的方法不能被子类所覆写class A{public final void fun();...原创 2019-03-26 21:26:43 · 836 阅读 · 0 评论 -
[JavaSE]包的定义和使用/单例设计模式
包包的定义和使用:文件夹,解决类名称重名的问题每一个点一个子目录使用:在源文件首行使用package 包名称;编译时:javac -d . Test.java//-d表示包名称 //.表示在当前路径下执行:带有包名称的主类执行时使用java 包名.类名要求:所有源文件必须定义包名称导入不同包的类:import 包名称.类名eg.import www,...原创 2019-03-11 22:14:26 · 113 阅读 · 1 评论 -
[JavaSE]多态、内部类
目录多态方法多态:对象多态性引用对象 instanceof类:内部类成员内部类(普通内部类)静态内部类方法内部类匿名内部类(抽象类)//简化代码多态定义:同一个类实例的相同方法在不同的情形下有不同的表现形式。 方法多态: 方法覆写方法重载对象多态性向上转型(90%):天然发生(认爹)应用场景:参数统一化父类 父类引...原创 2019-03-09 11:21:45 · 193 阅读 · 0 评论 -
[JavaSE]数据类型和运算符
目录数据类型和运算符1注释2标识符:3“驼峰”命名法4数据类型的划分//强类型语言:5基本数据类型:(数值型/字符型(默认值\u0000—空格)/布尔型(默认值false)/引用类型(默认值null)(三大引用类型):数组 类 接口)6运算符(基本运算符/三目运算符/逻辑运算符)7方法数据类型和运算符1注释I.//单行注释II./* */多行注释(不...原创 2019-03-04 21:59:52 · 211 阅读 · 0 评论 -
[JavaSE]数组总结
目录1数组1.1数组的创建-动态数组1.2数组的创建-静态数组1.3数组的使用(返回数组长度/获取数组中的元素/遍历数组)1.4数组拷贝(浅拷贝/深拷贝)1.5数组的应用(顺序查找/二分查找/检查数组的有序性/数组逆序/数组数字排列/二维数组)1数组一组相同数据类型的集合,长度固定1.1数组的创建-动态数组//动态初始化数组类型[]数组名称=ne...原创 2019-09-07 15:30:03 · 210 阅读 · 0 评论 -
[JavaDS]二叉树
学习二叉树必须首先掌握以下定义:二叉树:由根节点和左右子树组成的树。左右子树的顺序不可颠倒,每个节点最多有两个子树。叶子节点:度为0的树。兄弟节点:两个节点有相同的父节点。二叉树的遍历:先序:先遍历根节点再遍历左右孩子。中序:先遍历左孩子再遍历根节点再遍历右孩子。后序:先遍历左右孩子,再遍历根节点。实现:定义二叉树的内部类TreeNodepublic c...原创 2019-06-20 23:48:26 · 102 阅读 · 0 评论