![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java笔记
Mushroom-
不是在学习,就是在学习路上。
展开
-
【java】反射的概念及使用
(一)何为反射JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。(二)反射的内部作用机制通过类加载器将class文件加载到JVM中,构造成class对象,我们通过一些方法获得class对象,然后对class对象进行各种方法的调用能够获得...原创 2019-07-22 14:39:20 · 328 阅读 · 0 评论 -
【Java】Map中的keySet()方法
今天可能脑子发胀了吧,一直纠结keySet()方法的返回值到底是什么查了api,又查了百度,终于搞明白了keySet()方法的返回值是Set接口的实现类案例对象!!!!!那么问题来了,究竟是Set接口的哪个实现类对象呢?每个类都有一个继承自Object的getClass()方法,就是返回该类的全称。Set<String> set = map.keySet(); ...原创 2018-10-20 20:10:36 · 6532 阅读 · 0 评论 -
类加载器和委托机制?平平无奇!
(一)类加载的两种方式1. 隐式加载:通过new等方式生成对象时,隐式调用类装载器加载对应的类到JVM中,也就是自动加载。Student stu =new Student();2. 显式加载:当我们调用Class.fromName()等方法时显式加载对应的类到JVM中。Class stu =Class.fromName("包名.Student");(二)类加载的动态性一个应用程序往...原创 2019-07-22 14:41:36 · 176 阅读 · 0 评论 -
【java】JavaFX从零开始实现拼图小游戏
最近java课老师布置了一个作业:制作一个拼图小游戏,关键老师自己说javaGUI编程没用,讲课的时候好像跳过了(没去上课不过我猜应该没讲吧),现在又叫我们做这些,实在是哭笑不得。得了吧,老师的任务只能老老实实完成对吧,但是我又想到像Swing这些工具包已经基本上被淘汰了,做出来的页面有点老土,要学就学点好的,于是我选择用JavaFX来完成这次作业。JavaFX的发展也不容乐观,一直不温不...原创 2018-12-05 21:14:39 · 6435 阅读 · 28 评论 -
【java】substring()常用的两种方法
(1)substring(a,b);含头不含尾,即截取输出第a个和第b-1个之间的字符串(2)substring(a);即去掉第a个之前的字符,返回剩下的字符串原创 2018-09-16 18:43:45 · 1854 阅读 · 0 评论 -
【java】java中输出字符串中的单个字符及获得其长度
Scannersc= newScanner(System.in);String s = sc.next(); //Scanner类没有提供直接接收一个字符的方法,这里当作字符串来接收;char c = s.charAt(0); // 调用字符串的charAt()方法取得第一个字符就是了int n=s.length();//获得字符串s的长度...原创 2018-09-06 20:16:11 · 7051 阅读 · 0 评论 -
【java】Java计算一段程序的运行时间
①精确到纳秒long startTime=System.nanoTime();//获取开始时间/*测试的程序代码;*/long endTime=System.nanoTime();//获取结束时间System.out.println("运行时间是:"+(startTime-endTime)+"ns");//输出运行时间②精确到毫秒long startTime=...原创 2018-09-03 00:00:35 · 2600 阅读 · 3 评论 -
【java】递归次数过多导致堆栈溢出
在写一个算法中,由于递归调用次数过多,堆栈溢出。堆栈的大小是系统控制的,无法改变。如果递归调用出现问题,可以考虑采取循环的方式来解决,将需要的数据在关键的调用点保存下来使用。简单的说,就是用自己的数据保存方法来代替系统递归调用产生的堆栈数据。溢出的意思就是越界,操作系统会给每个进程分配一个最大上限的堆栈空间,如果超过了这个内存空间大小程序就会coredump,就像你创建一个太大的数组会崩溃...原创 2018-09-03 23:39:04 · 15564 阅读 · 0 评论 -
【java】取绝对值
在Java中可以使用Math.abs()方法来方便的进行绝对值计算,例如 1 Math.abs(1.3-5.6); 当然如果自己写的话也非常的简单,可以这样做: 1 2 3 publicIntegerabs(Integera){ returna>0?a:-a; } ...原创 2018-09-11 13:12:20 · 8383 阅读 · 0 评论 -
【java】关于sc.hasNext()在while语句中的使用
代码:while(sc.hasNext()) { int n=sc.nextInt(); System.out.println(n); }关于上面的代码,我觉得是把输入放进一个缓冲区类似于集合,按下结束符后,将缓冲区(集合)里的元素分别一个个取出来,在while语句里进行运算,等到元素全部取出来后,计算机又等待输入。...原创 2018-09-20 19:08:09 · 6818 阅读 · 1 评论 -
【数据结构】实现顺序表以及简单的时间复杂度分析
最近在学数据结构,接下来一段时间我将用java来实现所学的各种数据结构,以加深自己的印象。线性表包括顺序表和链表,其实顺序表就是动态数组,下面我将二次封装实现属于自己的动态数组。数组类:Array数组名:data数组容量:capacity已存放元素个数:size方法:①获取数组中元素个数(getSize)②获取数组容量(getCapacity)③返回数组是否为空...原创 2018-09-19 23:09:57 · 8715 阅读 · 0 评论