Java科普之基础知识回顾
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处!
Java语言由C衍生,丢弃C中的指针,使用“发出指令-接收返回值-验证-发出指令-接收返回值-验证”严格的机器应答模式,单线程操作,一环出错剩下则不执行,使得Java成为安全性系数较高的语言,为银行、证券、保险、通信等大型企业所青睐!
命名规则:以大小写字母、$、阿拉伯数字组成,但不能以数字开头,避免使用Java关键字,如方法定义的abstract、public,定义变量的static、final、基本数据类型(int,String),包定义package,接口定义interface等。这使得学会编程语言的人,可以在任何一个国家地区进行工作,而且编程人员的需求也越来越大,选择Java的同事是幸运的!
为什么要这样说呢,上面已经说Java编程程序是安全的,其次Java的内存可以手动回收,如静态变量直接赋空,Bitmap直接recycle,也可以由虚拟机自动去回收,也可以通过引用的方法引导虚拟机去回收(详见:Android高级开发第八讲--粗略讲述Java之软引用、弱引用和虚引用)。这样就给我们提供了很多便利,加上eclipse编辑器,这真是神的奉献,为我们提供一个良好的编程环境!
说到这里不得不介绍一些编程常用的软件,迷你版PS-图片编辑利器,startUml-软件业务图制作利器,AxureRP-软件设计图制作利器,有道词典-单词查看利器,EditPlus-文本编辑利器,SourceCounter-代码量计算利器,MindManager-思维图编辑利器,SVN-代码管理利器(可用git代替),沟通的QQ,搜索的Chrome也一笔代过,其中书签栏也是必备品。
Java命令:javac编译,java执行
正确的jdk配置方法:
1、高级系统设置-环境变量
2、系统变量栏-新建Java_Home,路径-jdk目录(如:C:\Program
Files (x86)\Java\jdk1.6.0_10)
3、然后path添加;%Java_Home%\bin;
4、系统变量栏-新建classpath,然后path添加.;%Java_Home%\lib;(提醒一定要记得加".",不然报java.lang.noClassDefaultFoundError)
Java编程是面向对象的,就像面对一个模特,怎么打扮是你的事;但每个项目都有对模特的要求,打扮成什么样子,需要多少人/天,打扮计划,项目管理,测试,最终这个模特被认可,欢迎度极高,上千万人的访问并且不影响模特的造型,还留有“余地”以后来改进,那么这就是开发团队所要做的事情。
Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。指令集就是一些指令的集合如移位、加减操作;寄存器像一个配置方法,保存机器运行状态的硬件,可以限制机器的使用次数(有些设备是被强制报废的,就与它有关);栈包含变量(操作对象)、方法(操作规则)、操作数(操作过程的缓存);垃圾回收堆一般后台回收无用的操作对象;存储方法域存放javac编译后的.class文件。
引用与内存的概念,通过new向堆申请一块内存,使用一个变量指向它,并放在栈里;实际上,垃圾回收是回收栈引用指向的堆内存,来提高系统的运行效率。
进制的问题,机器语言最终以0101的二进制形式出现,也有10进制,8进制(0开头,如011代表9),16进制(0x开头,0x11代表17)
同时注意浮点型数字后面要加1.23d或1.23f,代表不同的精确度,值不相等。
转义字符,\t代表空格,\n代表回车
运算符,算术运算符(+,-,*,/,%,++,--)
关系运算符(>,<,>=,<=,==,!=) 布尔逻辑运算符(!,&&,||) 位运算符(>>,<<,>>>,&,|,^,~)
;++op与op++(区别在于前者运算前先加,后者运算前不加),--,%(取余),三目运算:条件?结果a:结果b(true则a,否则b)。
控制语句,1.分支语句:if-else,break,switch,return. 2.循环语句:while,do-while,for,continue. 3.例外处理语句:try-catch-finally,throw
数组,一维、二维、多维,存储数据的变量;对象,变量的集合,instance of 来判断对象类型;包,对象:抽象、继承、多态;接口与抽象类,一般回调用接口,表达一个对象用抽象类,区别在于前者like像是,后者is是;数据结构,算法是对Java的补充。
Java内存占用测试方法:
long beforeMemory=Runtime.getRuntime().totalMemory();
/**
* 省略五百字
*/
long afterMemory=Runtime.getRuntime().totalMemory();
System.out.println("省略一百字:"+(afterMemory-beforeMemory));
另外理解下线程也是好的。Thread与Runnable的区别
最后这篇文章的缩进我都是用空格打出来的,诸位谁有更好的办法,介绍一下呗!
Java科普之基础知识回顾的更多相关文章
- java基础知识回顾之---java String final类普通方法
辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /* * 按照面向对象的思想对字符串进行功能分类. * ...
- Java基础知识回顾之七 ----- 总结篇
前言 在之前Java基础知识回顾中,我们回顾了基础数据类型.修饰符和String.三大特性.集合.多线程和IO.本篇文章则对之前学过的知识进行总结.除了简单的复习之外,还会增加一些相应的理解. 基础数 ...
- Java基础知识回顾(一):字符串小结
Java的基础知识回顾之字符串 一.引言 很多人喜欢在前面加入赘述,事实上去技术网站找相关的内容的一般都应当已经对相应知识有一定了解,因此我不再过多赘述字符串到底是什么东西,在官网中已经写得很明确了, ...
- C#基础知识回顾-- 反射(3)
C#基础知识回顾-- 反射(3) 获取Type对象的构造函数: 前一篇因为篇幅问题因为篇幅太短被移除首页,反射这一块还有一篇“怎样在程序集中使用反射”, 其他没有什么可以写的了,前两篇主要是铺垫, ...
- C#基础知识回顾-- 反射(1)
C#基础知识回顾-- 反射(1) 反射(reflection)是一种允许用户获得类型信息的C#特性.术语“反射”源自于它的工作方式: Type对象映射它所代表的底层对象.对Type对象进行查询可以 ...
- 【Java面试】基础知识篇
[Java面试]基础知识篇 Java基础知识总结,主要包括数据类型,string类,集合,线程,时间,正则,流,jdk5--8各个版本的新特性,等等.不足的地方,欢迎大家补充.源码分享见个人公告.Ja ...
- C#基础知识回顾--线程传参
C#基础知识回顾--线程传参 在不传递参数情况下,一般大家都使用ThreadStart代理来连接执行函数,ThreadStart委托接收的函数不能有参数, 也不能有返回值.如果希望传递参数给执行函数, ...
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...
- C++ 基础知识回顾总结
一.前言 为啥要写这篇博客?答:之前学习的C和C++相关的知识,早就被自己忘到一边去了.但是,随着音视频的学习的不断深入,和C/C++打交道的次数越来越多,看代码是没问题的,但是真到自己操刀去写一些代 ...
随机推荐
- 28335 sci fifo send
#include "DSP2833x_Device.h"#include "DSP2833x_Examples.h"char buf[]={0x30,0x32, ...
- JAVA数据结构-----栈
栈是Vector的一个子类,它实现了一个标准的后进先出的栈. 堆栈只定义了默认构造函数,用来创建一个空栈. 堆栈除了包括由Vector定义的所有方法,也定义了自己的一些方法. 栈常用的五个方法: bo ...
- P1951: [Sdoi2010]古代猪文
呜啊啊啊啊,选错了题,原以为很简单的优化+剪枝就能过结果牵扯到了一堆数论知识.我的错,贴上我的代码(已经尽量优化了) ; var n,g,i,j,ans:longint; tem:int64; fun ...
- shell if判断的种类
if [ $# != 1 ] ; then echo "USAGE: $0 TABNAME" echo " e.g.: $0 CDR_CALL_20040701" ...
- kernel nf_conntrack: table full, dropping packet[转载]
http://blog.yorkgu.me/2012/02/09/kernel-nf_conntrack-table-full-dropping-packet/ 综合:ip_conntrack就是li ...
- window窗口-button(按钮)-dialog(对话框,带按钮)
描述:一个可拖动的窗口程序,默认情况下窗口自由移动.调整大小.打开关闭! 案例1(普通的窗口): <div class="easyui-window" icon-Cls=&q ...
- 对中级Linux用户有用的20个命令
1. 命令: Find 搜索指定目录下的文件,从开始于父目录,然后搜索子目录. 注意: -name‘选项是搜索大小写敏感.可以使用-iname‘选项,这样在搜索中可以忽略大小写.(*是通配符,可以搜索 ...
- 1、android orm之greendao
前提:最近写android项目,android自带数据库api有点复杂,于是偷懒用了greendao.greendao好处自己查,这里不赘述,但是零基础的的我用起来还是费了3天的功夫,取之于网络,特在 ...
- Codeforces Round #131 (Div. 2) B. Hometask dp
题目链接: http://codeforces.com/problemset/problem/214/B Hometask time limit per test:2 secondsmemory li ...
- 关于Office 2013的几个问题
最近在阅读一些pdf的材料,想对其中做一些批注,但是PDF文档做批准比较麻烦,而且市场上的几个pdfToWord也不是很好用. 偶然的机会发现,使用office2013可以直接打开pdf文件,所以赶紧 ...