学习一门语言基础是非常重要的,因此本文总结了一些常见的Java基础问题的解答,希望可以帮到大家. 1. 九种基本数据类型的大小,以及他们的封装类. 9种基本数据类型 基本类型 包装类型 大小 boolean Boolean - byte Byte 8bit short Short 16bit int Integer 32bit long Long 64bit float Float 32bit double Double 64bit char Character 16bit void Void…
31. 反射的作用与原理 简单的来说,反射机制其实就是指程序在运行的时候能够获取自身的信息.如果知道一个类的名称或者它的一个实例对象, 就能把这个类的所有方法和变量的信息(方法名,变量名,方法,修饰符,类型,方法参数等等所有信息)找出来.如果明确知道这个类里的某个方法名+参数个数 类型,还能通过传递参数来运行那个类里的那个方法,这就是反射. 在Java中,Class类与java.lang.reflect类库一起对反射的概念提供了支持,该类库包含了Field.Method以及Constructor…
26. ThreadPool用法与优势 ThreadPool即线程池,它是JDK1.5引入的Concurrent包中用于处理并发编程的工具.使用线程池有如下好处: 降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁造成的消耗 提高响应速度:当任务到达时,任务可以不需要等到线程创建就能立即执行 提高线程的可管理性:线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控 线程池的创建方法如下: 通过ThreadPoolExecuto…
16. Java面向对象的三个特征与含义 java中的面向对象的三大基本特征分别是:封装.继承.多态: 封装:把过程和数据包围起来,对数据的访问只能通过已定义的界面,主要是方便类的修改 继承:对象的一个新类可以从现有的类中派生,这个过程称为类继承.通常继承把共性放到父类,特性放到子类.继承性很好的解决了软件的可重用性问题 多态:指允许不同类的对象对同一消息作出响应,多态性语言具有灵活.抽象.行为共享.代码共享的优势,很好的解决了应用程序函数同名问题   17. Override和Overload…
21. 实现多线程的两种方法:Thread与Runable 在Java中实现多线程编程有以下几个方法: 1.继承Thread类,重写run方法 public class Test { public static void main(String[] args) { new MyThread().start(); } private static class MyThread extends Thread { @Override public void run() { System.out.pri…
11. HashMap和ConcurrentHashMap的区别   从JDK1.2起,就有了HashMap,正如上一个问题所提到的,HashMap与HashTable不同,不是线程安全的,因此多线程操作时需要格外小心.在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从此我们有线程安全的ConcurrentHashMap用了. 那么ConcurrentHashMap是怎么实现线程安全的呢?肯定不可能是每个方法都加上synchronized关键字,否则就和HashTab…
6. Hashcode的作用 官方对于hashCode的解释如下: Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on…
黑马程序员:Java基础总结 java注解   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! java注解 lang包中的基本注解 @SuppressWarnings 通过System.runFinalizersOnExit(true);的编译警告引出@SuppressWarnings("deprecation")  @Deprecated 直接在刚才的类中增加一个方法,并加上@Deprecated标注,在另外一个类中调用这个方法. @Override…
摘要: java面试题-精选30道Java笔试题解答(二) 19. 下面程序能正常运行吗() public class NULL { public static void haha(){ System.out.println("haha"); } public static void main(String[] args) { ((NULL)null).haha(); } } 答案:能正常运行 解析:输出为haha,因为null值可以强制转换为任何java类类型,(String)nul…
在Java基础:java虚拟机(JVM)中,我们提到了Java的四种引用.包括:强引用,软引用,弱引用,虚引用.这篇博客将详细的讲解一下这四种引用. 1. 强引用 2. 软引用 3. 弱引用 4. 虚引用 5. 参考文章 1. 强引用 默认的Object object=new Object()的形式中,object即是对象new Object()的强引用,只有在object这个引用被释放后,对象才会被释放掉.这也是我们最常用的编码方式.如果一个引用是强引用,即使内存不足,GC也绝对不会回收它,而…
JAVA基础 Util包介绍 学Java基础的工具类库java.util包.在这个包中,Java提供了一些实用的方法和数据结构.本章介绍Java的实用工具类库java.util包.在这个包中,Java提供了一些实用的方法和数据结构.例如,Java提供日期(Data)类.日历(Calendar)类来产生和获取日期及时间,提供随机数(Random)类产生各种类型的随机数,还提供了堆栈(Stack).向量(Vector) .位集合(Bitset)以及哈希表(Hashtable)等类来表示相应的数据结构…
上一篇文章 .net基础学java系列(三)徘徊反思 本章节没啥营养,请绕路! 看视频,不实操,对于上了年龄的人来说,是记不住的!我已经看了几遍IDEA的教学视频: https://edu.51cto.com/course/15850.html,此视频分如下13节! 1-1 Idea介绍(刷过去,不看了) 1-2 Idea安装(刷过去,不看了,官网介绍的使用ToolBox安装,更好!) 1-3 idea创建普通Java工程(好吧,这里就跟.net的控制台应用程序一样嘛!) 1-4 idea设置样…
.net基础学java系列(三)徘徊反思 上一篇文章:.net基础学java系列(二)IDE 之 插件 这两天晚上看完了IDEA的教学视频:https://edu.51cto.com/course/15850.html ,善未实操. 这两天也确实比较忙,内心也在徘徊着: 一.准备被分配到子公司 子公司不是弹性上下班,上班必须准点,晚上随便你加班!每天需要提前一个小时起床,挤地铁,这生物钟没那么快调整得过来. 工作内容需要整理,遗留的疑难杂症需要给交代. 二.观望.net的工作,捡回.net基本知…
上一篇文章.net基础学java系列(二)IDE "扎实的基础"+"宽广的视野",基本可以帮我们摆脱码畜.码奴.码农的命运! IT领袖:IT大哥:IT精英:IT人才(遥不可及) IT工程师:年入20万(高级经理级别,有房贷,生活压力大) IT民工:年入10万(经理级别,基本无房,学会装波一,生活压力大) 码农:年入6万到10万(工作三四年,租房,继续混日子) 码奴:年入3万到6万(工作一两年,租房,混日子) 码畜:年入低于3万(刚毕业的,租房,傻乐) 先前在安装ID…
上一篇文章.net基础学java系列(一)视野 废话: "视野"这篇文章,管理员说它比较空洞!也许初学者看不懂表格中的大部分内容!多年的neter估计也有很多不知道的! 有.net的基础再学java,其实并不难,只不过要有更多的付出而已,但是懂多一门技术多一条出路,你说呢? 小公司一直在模仿大厂, 华为 DevOps 转型之旅 微软 DevOps 转型之旅 从未得要领,却要求有狼性效应!DevOps,在各个公司的转型过程中表现不同,所获得的成果不同 -- "全栈工程师&quo…
在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句话中最引人注目的是“复用代码”,尽可能的复用代码使我们程序员一直在追求的,现在我来介绍一种复用代码的方式,也是java三大特性之一---继承. 继承 在讲解之前我们先看一个例子,该例子是前篇博文(java基础(一)-----java的三大特性之封装)的. 从这里我们可以看出,Wife.Husband两个类除了…
问:表示音乐出身的妹纸一枚  某一天突然觉得身边认识的是一群程序员   突然想 要不要也去试试... 众好友都觉得我该去做个老师,可是我怕我会误人子弟,祸害祖国下一代..... 要不要 要不要 学Java去..这是不是一条不归路 ... 答:初级应用编程没什么难的 , 只要数学方面不是特别渣, 思维逻辑不混乱,基本上是可行的, 至于其他的 ,没什么可考虑的 , 听得再多,不如向写一波程序 . 你的担忧不无道理,人最怕的就是失去热情.老师的发展空间小且多数属于事业单位 ,在选择和个人成长性上可能较…
Java基础-使用JAVA代码剖析MD5算法实现过程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.…
着重基础之—Java 8 Comparator: How to Sort a List (List排序) 首先申明,这篇博客的内容不是我自己的知识,我是从国外网站搬来的,原因有二:1是因为大天朝对网络的封锁,想用google搜点技术知识,得先FQ.2.百度上的知识点你如果仔细琢磨的话会发现,所有的搜到的知识分俩类,一类是安装教程,一类是.... Java List排序是我们日常工作中用的比较频繁的,下面内容将介绍Java 8 Comparator 的用法: 1.字符串List 按字母顺序排列 L…
转自于:精选30道Java笔试题解答 精选30道Java笔试题解答 1. 下面哪些是Thread类的方法() A. start() B. run() C. exit() D. getPriority() 答案:ABD 解析:看Java API docs吧:[http://docs.oracle.com/javase/7/docs/api/](http://docs.oracle.com/javase/7/docs/api/),exit()是System类的方法,如System.exit(0).…
实 验 报 告 课程:程序设计与数据结构 姓名:张家铖 班级:1623 学号:20162312 实验名称: Linux基础与Java开发环境 实验器材:msi GL62M 7RD 实验目的与要求:1.基本熟悉Linux环境下的操作.熟悉Linux下的命令.编写简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验内容.步骤与体会: 实验内容: 1.JVM.JRE.JDK如何安装及各自特点: 2.运行javac:java:javac -cp; java -cp以在主…
(作者声明:对于Java编程语言,很多人只知道怎么用,却对其了解甚少.我也是其中一员.所以菜鸟的我,去查询了教科书以及大神的总结,主要参考了<Java核心技术>这本神作.现在分享给大家!) Ⅰ.Java的定义 定义:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征.Java具有简单性.面向对象.分布式.健壮性.安全性.平台独立与可移植性.多线程.动态性等特点. Ⅱ.Java的特点 Jav…
博文作者:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_00017 Kafka的体系结构介绍以及Kafka入门案例(0基础案例+Java API的使用) 个性签名:世界上最遥远的距离不是天涯,也不是海角.而是我站在妳的面前,妳却感觉不到我的存在 技术方向:Flume+Kafka+Storm+Redis/Hbase+Hadoop+Hive+Mahout+Spar…
实验一 (一)实验内容 基于命令行和IDE(Intellj IDEA 简易教程http://www.cnblogs.com/rocedu/p/4421202.html)进行简单的Java程序编辑.编译.运行和调试.(本次实验主要使用命令行的方式) 练习Linux基本命令: 学习Java程序的JDB调试技能:https://www.cnblogs.com/rocedu/p/6371262.html 编写简单的Java程序. (二)实验要求 初步掌握Linux命令特别是man,find,locate…
20182332 实验一<Linux基础与Java开发环境>实验报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 盛国榕 学号:20182332 实验教师:王志强 实验日期:2019年9月9日 必修/选修: 必修 1.实验内容 基于命令行和IDE[Intellj IDEA 简易教程]进行简单的Java程序编辑.编译.运行和调试.(本次实验主要使用命令行的方式) 练习Linux基本命令: 学习Java程序的JDB调试技能 编写简单的Java程序. 2.实验过程及结果 JD…
很多Java编程初学者在刚接触Java语言程序的时候,不知道该学习掌握哪些必要的基础知识.本文总结了零基础学习Java编程语言的几个基础知识要点. 1先了解什么是Java的四个方面   初学者先弄清这些Java的基本概念也是必不可少的,死记硬背肯定是不行的,重在理解,理解它们之间的区别与联系,分别有哪些应用.想想这些代码中用到了哪些知识点.不要一味地照着书本敲代码.而不去理解. 1.Java编程语言,即语法. 2.Java文件格式,即各种文件夹.文件的后缀. 3.Java虚拟机(JVM),即处理…
对于各位Java程序员来说,只要能有实践的机会,哪怕工资再低,公司情况再一般,只要自己上心努力,就可能在短时间内快速提升,甚至在工作2年后进大厂都有希望,因为项目里真实的开发实践环境是平时学习不能模拟的.所以很多想从事Java开发的同学其实是卡在了第一步:无法积累足以找到工作的项目经验,甚至不知道该如何积累,从而导致没面试机会,或者面试总通不过.这样很多有编程天赋有而且聪明上进的程序员可能就与感兴趣的职业失之交臂了. 作为面试官,我知道Java初级开发的最低面试标准,作为Java培训讲师,我帮助…
在最权威的 TIOBE 编程语言排名榜单上,Java 常年稳居第一,可以说是世界上应用最为广泛的一门语言. 同时,在微服务.云计算.大数据.Android App 开发等领域,Java 也是当之无愧的主角.学好了 Java,未来的就业之路也会非常宽广. 帮你轻松迈进编程世界的大门,并能够独立编写出规范.有用的 Java 程序,同时为后续的深入学习打下坚实的基础. 臧萌,现任 PayPal 数据处理组技术负责人.先后在 Sybase.eBay.亚马逊.携程.PayPal等公司工作,多年来他专注于J…
最近突发奇想,整合一下以前一些学习笔记,分享自己这几年爬过的坑,逐步更新文章,谢谢大家的关注和支持. 这节讲一下SpringBoot的学习必须的一些基础,Java配置.其实在Spring2.0时代就已经有注解配置了,但是开发人员还是喜欢注解和xml混合配置,当SpringBoot出来后,这个全注解配置,即Java配置就成为主流. 讲一个例子在SpringMVC+Spring+Mybatis框架整合时,必须注入IOC容器的时一个数据库连接池,因此做过SSM架构搭建的人都知道要配置以下 <!-- 配…
Java基础技术-Java其他主题[面试] Java基础技术IO与队列 Java BIO.NIO.AIO Java 中 BIO.NIO.AIO 的区别是什么? 含义不同: BIO(Blocking IO)是同步并阻塞的 IO,线程发起 IO 请求后,不论内核是否准备好 IO 操作,都会一直阻塞直到操作完成 NIO(Non-blocking IO)是同步非阻塞的 IO,线程发起 IO 请求后立即返回:内核在做好 IO 操作的准备之后,通过调用注册的回调函数通知线程做 IO 操作,线程开始阻塞,直到…