Java百问

Java百问
 
程序员经常可以通过搜索或者记忆来完成代码,但是许多时候并不真正理解为什么那样写。也就是说,有一定经验的程序员不会犯一些低级的语法错误,但是因为不深入理解有可能造成一些高级错误,比如说运行无效率,代码难Debug,等等。下面是一些常见的理解性问题,每一个问题尽量用图或代码去描述。带着问题去看有图的内容是一种娱乐和消遣。内容全部来自“码河网”(programcreek.com),包括基本语法、数组、集合类、泛型、面向对象、垃圾回收、异常控制、输入输出和内存。不断更新,欢迎大家提出有趣味的问题和意见。


从Hello World中你可以学到什么?
如何创建自己的库?
类如何初始化?
包和路径
–数据类型


关于double的一个常见问题
String不变性?
为什么String有不变性?
String是如何传递的?
length vs length()
什么是null?
–通用类和方法


比较Comparator与Comparable
hashCode()和equals()之间的协议
–面向对象




 
Overloading vs Overriding
Fields能不能被Overridden?
4种内部类
什么是内部接口?
构造函数如何使用?
访问权限
Private构造方法有什么作用?
– 异常处理


异常处理介绍
异常处理类结构
– 文件


一行一行读取文件
一行一行写入文件
– 多线程


多线程对日常编程有什么用?
一个图来演示Java处理多线程的原理
join()
notify()和wait()
– Collections & Maps


Collection和Map类以及接口
比较不同的List
比较不同的Set
比较不同的Map
怎样写一个有效率的计数器?
HashMap常用的方法:循环,打印,按值排序
什么是类型擦除?
为什么Java引进泛型Generics的概念?
— 反射


Java是值传递还是址传递?为什么这样设计
为什么需要反射Reflection? (1)
为什么需要反射Reflection? (2) Example List
什么是框架Framework?为什么到处都是它?
Why need Web framework?
— JVM


什么是JVM?
JVM运行时是什么样子?
垃圾收集器是如何工作的?
简单数据类型在内存中是什么形式?
数组在内存里是什么情况?
Java如何处理Aliasing?
运行时对象在内存中是什么样的?
什么是内存泄漏?
–有关应用的一些概念


什么是Servlet Container? Tomcat是什么?
为什么需要软件测试?
什么是面向方面编程
库与框架的区别
理解框架的一个小例子
把jar转化成exe
– 一些理论问题


循环与递归
Java与计算机核心课程
编译器是如何工作的?
8分钟了解什么是正则表达式
怎样用动态规划方法计算两字符串间的距离?
– 一些库的简单示例


Guava
JSoup
Spring
Struts 2
Swing
Eclipse RCP
–Top 10


图说Java
数组10大常用方法
String常见10大问题
正则表达式常见10大问题
异常处理常见10大问题
Collection常见的10个问题
Map常见的10个问题
–推荐收藏


Java常用库汇总
Java代码实例查询
讲故事理解设计模式
对Java高级程序员有益的10大网站
对Java高级程序员有益的10本书
编程面试10大算法概念汇总
优秀Java程序员博客汇总
– 娱乐


周末找点乐趣
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值