Java学习笔记:Java基础知识
来源:互联网 发布:知及之仁不能守之 编辑:程序博客网 时间:2024/05/19 00:40
1.Java开发环境的搭建
jdk包含Java开发工具和运行环境(jre)jdk=Java Development Kit jre=Java Runtime Environment
jdk里包括单独的jre, jre里面包括Java虚拟机;
path:去哪里找编译或运行等工具(必须设置),不同目录用(;)分开
classpath:去哪里找需要运行的class文件(java5开始可不设置)
JAVA_HOME:指定JDK的安装目录,给其他应用程序看的
2.Java的基本数据类型
字符型charJava字符采用Unicode编码,可用十六进制编码形式表示
char c1 = '\u0061'; //相当于 char c1 = 'a';
3.String
String是最常用的引用数据类型,不属于基本数据类型字符串的连接采用 + 符号
String s = "hello,"+"world" ;
4.Java7新特性
数值的二进制表示: 0B或0b数值的底线格式:可以通过增加底线来增强数值的可读性
int i =100_000 ;//相当于 int i = 100000;
5.编程实现“九九乘法表”
public static void main(String[] args) {for (int i = 1; i < 10; i++) {for (int j = 1; j <= i; j++) {System.out.print(i+"*"+j+"="+i*j+" ");}System.out.println();}}
6.流程控制
break:终止循环continue:跳过该成循环
7.方法重载
两同:同一类中,方法名相同一不同:参数列表不同(参数个数、参数类型、参数顺序)
8.数组
静态初试化:初始化时便给出数组中的初始值int[] arr = {1,2,3,4,5};
动态初始化:指定数组长度,由系统为数组分配初始值
int[] arr = new arr[5];
得到数组长度:
int len = arr.length(); //length是数组的属性
操作数组常见问题:
数组脚标越界异常(ArrayIndexOutOfBoundsException)
空引用异常(NullPointerException)
9.Java中的堆和栈
Java把内存划分成两种:一种是栈内存,另一种是堆内存栈内存:
用于存储局部变量,空间不用时自动释放
堆内存:
存储数组和对象(即new出来的对象)
Java对其有特定的垃圾回收机制,在不定时的时间内将垃圾清除释放空间
在函数中定义一些基本类型的变量和对象的的引用变量都是在函数的栈内存中分配。
在一段代码块中定义一个变量时,Java就在栈中为这个变量分配内存空间,但如果超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间。(局部变量)
堆内存用来存放由new创建的对象和数组。在堆中分配的内存,由JVM自动垃圾回收器进行管理。
在堆中产生一个数组或对象后,还可以在栈中定义一个特殊的变量,让栈中的这个变量的取值等于数组或对对象在堆内的首地址,栈中的这个变量就成了数组或对象的引用变量。
Integer a = new Integer(2);//其中a位于堆区,new出来的整数2位于栈区
10.Java中的方法传递机制
值传递引用传递
11.操作数组的工具类-Arrays
二分查找(对象数组必须是有序的)static int binarySearch(type[] a, int fromIndex, int toIndex, type key)
数组拷贝:(对不同的数据类型有不同的copyOf()方法)
static int[] copyOf(int[] original, int newLength)
判断两个数组是否相同
static int equals(int[] a, int[] a2)
排序:按升序进行排序
static void sort(type[] a)
将数组内容用字符串形式表示
static String toString(type[] a)
输出形式为[val1,val2,val3,……]
int[] arr = {1,2,3,4,5,6,7};System.out.println(Arrays.toString(arr));//[1, 2, 3, 4, 5, 6, 7]
- JAVA学习笔记(基础知识)
- 【Java 学习笔记】基础知识
- JAVA学习,基础知识笔记
- Java学习笔记:Java基础知识
- java基础知识学习笔记1
- java基础知识学习笔记2
- Java学习笔记:基础知识2
- java学习笔记1-基础知识
- Java学习笔记_001_基础知识
- 黑马学习笔记--JAVA基础知识
- Java基础知识学习笔记总结
- java学习笔记,1,java语言基础知识
- 【Java学习笔记】基础知识学习13【Map】
- 【Java学习笔记】基础知识学习14【文件】
- Java 网络编程 学习笔记一 基础知识
- 黑马程序员 java学习笔记-基础知识盘点
- JAVA基础知识学习笔记(流程控制、数组)
- java学习笔记——基础知识
- 路由器的登陆界面登陆过慢的原因
- 老子的软件之道 - 道篇 36 治理矛盾
- 解决Vista或windows7上通过远程桌面控制服务器速度比较慢
- 如果Imageview与Linearlayout有叠加且可选资源长度不同,如何布局?
- ASP.NET操作EXCEL的总结篇(转自http://www.jb51.net/article/26273.htm)
- Java学习笔记:Java基础知识
- iOS多线程编程指南(三)Run Loop
- 调用系统的图片裁剪无法返回
- 重载操作符
- 用Cmake编译调用Qxt,Qwt和Qserialport
- 如何使用Log4j?
- mt.exe : general error c101008d 解决方法
- cvCopy与cvCloneImage的区别
- selenium webdriver 不识别showModalDialog()的处理方案