![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
奔跑的小鲫鱼
关于学习Java的总结以及遇到的问题及解决方法的描述
展开
-
【Java】什么是多态?多态的实现机制是什么?
官方解释: 1.接口的多种不同的实现方式即为多态。 2.多态性是允许你将父类对象设置成为一个或更多的他的子对象相等的技术。 3.我们在程序中定义的引用变量所指向的具体类型和通过改引用变量的方法调用在编程的时候并不确定,相当于运行期间才确定。就是这个引用变量究竟指向那个一个实例化对象,在编译期间是不确定的,只有运行期间才确定。这样不用修改源码就可以把变量绑定到不同的实例类上,让程序拥有了多个运行状态,这就是多态。what!!!这是啥,不懂。解释一下 意思就是:允许将子类类型的指...原创 2020-12-12 16:24:19 · 1426 阅读 · 0 评论 -
【Java】面向对象是什么
自从开始接触java,就有人告诉我说,java是面向对象的编程语言。最多就是new一个对象,但是并不知道对象是什么。我以为对象就是一个class类,没有什么特别的。但开始找工作的时候,面试的人问了一个问题,什么是OOP,我当时一蒙,oop是啥,突然想到,oop不是面向对象编程吗?难道这个问题的答案就是一句话,我觉得没有那么简单,所以回来自己找了一些资料,整理的如下:什么是OOP,Object Oriented Programming,解释就是面向对象的编程,还有OOD---面向对象的设计,OOA----原创 2020-12-12 15:28:46 · 130 阅读 · 0 评论 -
【Java】MapReduce编程的编程思想以及基于Hadoop的Wordcount的程序的实现
1.MapReduce编程的编程思想(比如该文件就只输入三行,如下面所示)hive spark hive hbasehadoop hive sparksqoop flume scala(0,“hive spark hive hbase”)(22,“hadoop hive spark”)(40,“sqoop flume scala”) 输出:(hive,1),(spark,1)...原创 2018-06-18 22:49:51 · 815 阅读 · 1 评论 -
【Java】身份证的验证
题目要求:输入18位的身份证号码,要求首先验证身份证号码合法性(仅利用校验位验证),如果合法则输出性别和出生日期。说明:(1)身份证号码的7~12位表示出生年月;第17位表示性别,奇数为男,偶数为女;最后一位为校验位(2)校验算法:将前面的身份证号码17位数加权求和(系数分别7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2),然后除以11,根据余数找到对应的校验位(分别为1、...原创 2018-04-10 15:02:09 · 847 阅读 · 4 评论 -
【Java】程序调试
在我们写程序中,调试是必不可少的,下面介绍一下调试的原理和方法:1.为什么需要调试? 因为程序出现问题的概率很高,甚至几乎是肯定的,那么排除错误的能力对于程序员而言就至关重要了。在实际项目中,调试的时间往往多余开发时间。 而且,调试工具也是一个非常好的学习工具,能让我们更好地观察运行过程和中间结果,这对于初学者理解一些抽象的概念是非常有好处的。(1) 出现语法错误,一定要看错误提示,看不懂可...原创 2018-04-11 20:08:40 · 582 阅读 · 0 评论 -
【Java】进制转换器的实现
import java.util.Scanner;public class BHDConverter { static int from; //全局变量 从几进制转换为几进制 static int to;//全局变量 要转的进制 public static void main(String[] args) { while(true) { ...原创 2018-04-12 22:49:59 · 386 阅读 · 0 评论 -
【Java】关于学习while do-while for循环知识点的总结
在写循环题目时,首先应该先回答四个问题:(1)初始状态由哪些变量描述。也就是其初值是什么(2)循环的控制条件是什么(题目中给出的条件往往是反的)(3)需要反复做什么(4)如何过渡到下一次循环如:求100以内的各位数之和。for(int i=1;i<=100;i++){sum+=i;}但是for循环的优势也很明显:简洁从上面的对比可以发现,for比较简...原创 2018-04-13 23:36:29 · 1021 阅读 · 0 评论 -
【Java】Java 使用函数的方法输出菱形(星号)
案例:输出菱形的代码如下图形上三角形的行数(rows)由用户输入* ************************************************************解题思路:找规律(下图是找出的规律):行号星号空格11Rows-123Rows-2Rows2*Rows-1Rows-rowRows+12*Rows-...原创 2018-04-19 00:27:02 · 3639 阅读 · 1 评论 -
【网络】几种常见的协议
几种常见的协议DNS(Domain Name System):域名解析协议,端口号:53;通过域名解析获得域名所对应的IPFTP(File Transfer Protocol):文件传输协议,端口号:21;用户可通过客户机程序向远程主机上传文件;或从远程主机上下载文件。HTTP(HyperText Transfer Protocol):超文本传输协议,端口号:80;最初设计HTTP是为了提供一种发...原创 2018-05-17 00:54:34 · 1368 阅读 · 1 评论 -
【Java】java测试--词频统计 ----IO流操作
(1)、新建文本文件data.txt(2)随便输入一些英文单词,单词之间用 “空格”隔开(3)统计各个单词出现的次数。(4)对结果进行排序 a、按照次数进行降序 b、如果次数相同,安装单词的字典顺序排序 public static void main(String[] args) throws IOExcept...原创 2018-06-06 21:51:22 · 348 阅读 · 0 评论 -
【maven】maven的介绍
一、Maven简介Maven是一个跨平台的项目管理工具。作为Apache组织的一个颇为成功的开源项目,其主要服务于基于Java平台的项目创建,依赖管理和项目信息管理。maven是Apache的顶级项目,解释为“专家,内行”,它是一个项目管理的工具,maven自身是纯java开发的( Theresult is a tool that can now be used for building and ...原创 2018-06-08 00:35:36 · 5827 阅读 · 0 评论 -
【maven】maven入门以及maven常用命令
在企业中的开发对应三个步骤: 开发 -----》测试 --》发布 开发环境 测试环境 生产环境硬编码:通过调用Android系统自带的Camera录制视频,实际上是调用了底层的高清编码硬件模块,也即显卡,不使用CPU,速度快软编码:使用CPU进行编...原创 2018-06-08 00:56:33 · 174 阅读 · 0 评论 -
【maven】新建一个maven项目的基本配置
(1)在ideal中,通过file----》new project---然后选择maven,如下图截图所示2. 项目的组织名或者公司名的填写3. 选择保存路径以及项目名称编写4. 项目的配置5.最后如果项目出现了一个窗口,请一定要选择自动导入的那个命令,我这里没有那个截图。以上就是基本配置,如果配置成功之后没有出现新建Servlet的话先关掉ideal再重启。就是可以了...原创 2018-06-08 01:02:52 · 665 阅读 · 0 评论 -
【Java】MapReduce 程序五步走的思想详细描述
1.MapReduce 的计算过程 =》分布式计算模型 =》input =》mapper =》shuffle =》reducer =》output2..YARN分布式:主从 ResourceManager:特点—》资源管理、任务调度、管理从节点 NodeMa...原创 2018-06-24 00:33:35 · 477 阅读 · 0 评论 -
【Java】使用MapReduce程序统计PV数量
1..网站日志分析 -》网站的基本指标 pv:page view—》打开多个页面累加 uv:unique view—》一天内访问网站的用户数 vv:visit view —》访客的访问次数,一天内,用户访问了多少次网站 session ip:独立ip数 -》统计网站指标的作用:数据变现—》具体的体现—》按钮位置—》页面来源比如:Google和百度...原创 2018-06-24 00:45:16 · 1610 阅读 · 0 评论 -
【Java】使用MapReduce程序统计UV数量
1.UV的概念 UV:unique view—》一天内访问网站的用户数 下面是统计UV的代码: 首先是MapReduce类的代码package com.huadian.bigdata.webloguv07;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.conf.Configured;im...原创 2018-06-24 15:36:54 · 1368 阅读 · 0 评论 -
【Java】关于Java的一些基础知识点
在学习Java时,我们需要了解一些Java的知识点,一下是我在学习Java时总结的一些知识点:1.数据类型为什么要有数据类型?因为生活中的数据本来就存在类型,比如年龄应该是整型的,考试的平均分是浮点,婚姻状况是逻辑类(布尔类型).....。而计算机程序是为了解决现实问题的,所以需要对应的描述。类型有什么作用?①确定数据所需内存空间②确定数据的表示范围③确定数据所能执行的范围,比如整数是可以执行算数...原创 2018-04-09 11:09:22 · 157 阅读 · 1 评论 -
【Java】JDK1.8新特性Date类----日期/时间改进
一、为什么我们需要新的Java日期/时间API?1.8之前JDK自带的日期处理类非常不方便,我们处理的时候经常是使用的第三方工具包,比如commons-lang包等。不过1.8出现之后这个改观了很多,比如日期时间的创建、比较、调整、格式化、时间间隔等。这些类都在java.time包下。比原来实用了很多。二、Java8日期/时间API的特点 不变性:新的日期/时间API中,所有的类都是不可...原创 2018-06-27 19:47:48 · 16965 阅读 · 1 评论 -
【hive】hive----自定义UDF 函数-----时间格式化以及取出双引号的代码
一.UDF的描述用户自定义函数(UDF)是一个允许用户扩展HiveQL的强大的功能。用户可以使用Java编写自己的UDF,一旦将用户自定义函数加入到用户会话中(交互式的或者通过脚本执行的),它们就将和内置的函数一样使用,甚至可以提供联机帮助。Hive具有多种类型的用户自定义函数,每一种都会针对输入数据执行特定“一类”的转换过程。 在ETL处理中,ETL(是指:ETL是将业务系统的数据经过...原创 2018-07-02 00:14:21 · 922 阅读 · 0 评论 -
【Java】Java中String、StringBuilder、StringBuffer三者的区别
这三个类之间的区别主要是在两个方面(运行速度和线程安全)这两方面。1. 首先说运行速度,或者说是执行速度,在这方面运行速度快慢为: StringBuilder >StringBuffer > String String最慢的原因: String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不...原创 2018-07-12 23:04:33 · 158 阅读 · 0 评论 -
【Java】Int类型逻辑运算符的详细描述---含代码
int型是4字节32位&,|,~,^,<<,>>,>>>"&" 按位与,计算时将 十进制 转为 二进制 再进行计算,同位置为1,则结果为1,其余情况皆为03: 00000000 00000000 00000000 000000116: 00000000 00000000 00000000 000001103&6: ...原创 2018-07-25 00:10:29 · 3415 阅读 · 0 评论 -
JAVA 面试高频提问知识点之:SET、LIST 和 MAP 的区别
首先,Set 、List 和 Map 是 Java 容器框架的三个最重要的接口,Set、List 和 Map 之间的区别是 Java 容器面试时最经常提问的问题之一。有时这一问题被问作是什么时候使用 List、Set 和 Map。很明显,面试官想知道的是你是否熟悉 Java 容器框架的基础知识。要想明确何时使用 List、Set 或者 Map,你首先需要去了解这些接口是什么、它们提供了什么功能。J...转载 2018-07-07 21:45:34 · 1594 阅读 · 0 评论 -
Java 面试高频提问知识点一
1、Arraylist和LinkedList的区别? 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。2、java ...转载 2018-07-07 21:41:48 · 313 阅读 · 1 评论 -
JAVA面试题之经典题型
1、什么是值传递和引用传递? 对象被值传递,意味着传递了对象的一个副本。因此,就算是改变了对象副本,也不会影响源对象的值。对象被引用传递,意味着传递的并不是实际的对象,而是对象的引用。因此,外部对引用对象所做的改变会反映到所有的对象上。2、int和Integer有什么区别? Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据...转载 2018-07-07 21:35:50 · 289 阅读 · 1 评论 -
JAVA面试题(2018)
(答案在最后面。。。)第1题:下列关于for循环和while循环的说法中,正确的是: A.while循环能实现的操作,for循环也能实现 B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果 C.两种循环任何时候都可以替换 D.两种循环结构中必须都有循环体,循环体不能为空 第2题:下面的表达式中正确的是: A.String s=”你好”;if(s==”你好...转载 2018-07-07 21:32:46 · 769 阅读 · 0 评论 -
【Java】Java中的设计模式的介绍以及代码详解
一.什么是设计模式?设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。对问题行之有效地解决方式,是一种设计思想。java 中设计模式一般有23种 创建型模式(5种):工厂方法模式,抽象工厂模式,单例模式, 建造者模式,原型模式。 结构型模式(7种):适配器模式,装饰...原创 2018-07-16 22:45:58 · 462 阅读 · 0 评论 -
【Java】Java 8 新特性-----Lambda 表达式
一、Lambda 表达式的主要改进点Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。 Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。 使用 Lambda 表达式可以使代码变的更加简洁紧凑。二、以下是lambda表达式的重要特征可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。 可选的参数圆括号:一个参数无需定义圆...原创 2018-06-27 20:03:16 · 215 阅读 · 1 评论 -
Java中使用foreach带来的一些问题
foreach总结: foreach是java5的新特性,foreach主要是增强了for循环,在遍历数组和集合上很方便。foreach是for循环的简化版本,但是foreach不能完全取代for循环,然而任何foreach都可以改写为for循环,foreach不是一个关键字,主要就是这个格式,每一个for的意思。foreach语句格式: for(元素类型type 元素变量value : 遍...转载 2018-07-15 21:46:31 · 1868 阅读 · 0 评论 -
【Java】javaWeb中的三大组件与八大监听器
一、三大组件 JavaWeb三大组件指的是:Servlet、Filter、Listener,这三个组件在JavaWeb开发中分别提供不同的功能,然而很多人可能只用过其中一个或者两个(Servlet、Filter,比如我),很难接触到第三个组件,因此对原始JavaWeb开发还不够熟悉,在这种情况下进行框架学习,这种做法是并不可取,框架是大牛们对原始JavaWeb进行封装的结果,没有原始Jav...原创 2018-08-11 22:44:33 · 5117 阅读 · 4 评论 -
【Java】@transient代表着什么
@transient是java 的transient关键字的作用,是需要实现Serilizable接口,@transient是类型修饰符,只能用来修饰字段。在对象序列化过程中, /被transient标记的变量不会被序列化在Scala中需要使用@transient修饰的方法时,需要进行注册,这里是解析json字符串的时候使用到的。下面是一个例子定义:/** * ObjectM...原创 2018-08-12 17:30:17 · 2602 阅读 · 0 评论 -
【Java】使用springboot运行程序时出现的错误
写的程序昨天还可以运行,第二天运行不了,而且也没有改什么,一运行就报这个错误,如下图所示这个可能是你的mysql服务没有启动导致,这时候你应该去启动mysql的连接,我的mysql报了这个错,如下图所示这时我猜想可能是我的mysql服务没启动,这时候去到电脑的任务管理器打开mysql服务,如下图所示这时在连接数据库,也可以正常连接了,然后启动程序,程序也正常了。...原创 2019-02-27 14:24:33 · 773 阅读 · 0 评论 -
【Java】使用springboot框架中的注解@ManyToOne遇到的坑
包如下的错:java.lang.IllegalStateException: Cannot call sendError() after the response has been committed1.在一个对象的属性中使用@ManyToOne对于某一个关联的字段时,在使用findAll会报如下的错,如下图是在一个对象中使用了@ManyToOne但是findAll会报如下的错,并且查...原创 2019-02-27 15:33:43 · 2268 阅读 · 0 评论 -
【Java】Java中的在Linux和Mac以及Windows上使用File.separator的坑
1.在写代码中使用File.separator,作文文件名的分割时,会报如下的错,这是在windows上运行的,但是Linux和Mac上是可以的2.原因很简单,直接修改修改为这样就可以了。...原创 2019-03-03 22:35:00 · 923 阅读 · 0 评论 -
【Java】springboot学习笔记二
一.前面学习了springboot的介绍以及springboot的作用、以及创建springboot的项目,今天学习了springboot的注解。这里先学的是@RestController在上加上RestController 表示修饰该Controller所有的方法返回JSON格式,直接可以编写Restful接口@EnableAutoConfiguration注解:作用在于让 Spring B...原创 2019-03-18 22:42:42 · 329 阅读 · 0 评论 -
【Java】springboot的学习第二天
springboot可以整合JSP以及Freemarker视图层,springboot自己搭建项目,必须使用全局捕获异常。全局捕获异常:这个web项目请求异常。异常打印到日志中。Aop技术:(引入aopjar包),前置通知,拦截请求参数信息。...原创 2019-05-12 16:00:10 · 156 阅读 · 0 评论 -
【Java】关于Java编程软件idea快捷键的使用
在使用ideal时,使用这些快捷键可以帮助我们快速生成一些代码,和查找以及快速命名等问题:1.常使用的一些快捷键:psvm:快速生成public static void main(String[] args)Sout:快速生成System.out.println();Souf:快速生成System.out.printf();Ctrl+F: 查找Ctrl+R:替换输出:Ctrl+d,重复当前行。C...原创 2018-04-09 23:21:12 · 439 阅读 · 1 评论